华为OD机试 - 英文输入法(Java 2023 B卷 100分)

在这里插入图片描述

目录

    • 专栏导读
    • 一、题目描述
    • 二、输入描述
    • 三、输出描述
    • 四、解题思路
    • 五、Java算法源码
    • 六、效果展示
      • 1、输入
      • 2、输出

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷)》。

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

一、题目描述

主管期望你来实现英文输入法单词联想功能。

需求如下:

依据用户输入的单词前缀,从已输入的英文语句中联想出用户想输入的单词,按字典序输出联想到的单词序列,如果联想不到,请输出用户输入的单词前缀。

注意:

  • 英文单词联想时,区分大小写
  • 缩略形式如”don’t”,判定为两个单词,”don”和”t”
  • 输出的单词序列,不能有重复单词,且只能是英文单词,不能有标点符号

二、输入描述

输入为两行。

  1. 首行输入一段由英文单词word和标点符号组成的语句str;
  2. 接下来一行为一个英文单词前缀pre。

0 < word.length() <= 20
0 < str.length <= 10000
0 < pre <= 20

三、输出描述

输出符合要求的单词序列或单词前缀,存在多个时,单词之间以单个空格分割

输入输出说明
I love you
He
He从用户已输入英文语句”I love you”中提炼出“I”、“love”、“you”三个单词,接下来用户输入“He”,\n\n从已输入信息中无法联想到任何符合要求的单词,因此输出用户输入的单词前缀。
The furthest distance in the world, Is not between life and death, But when I stand in front of you, Yet you don’t know that I love you.
f
front furthest从用户已输入英文语句”The furthestdistance in the world, Is not between life and death, But when I stand in frontof you, Yet you dont know that I love you.”中提炼出的单词,符合“f”作为前缀的,有“furthest”和“front”,按字典序排序并在单词间添加空格后输出,结果为“front furthest”。

四、解题思路

根据题意描述来就可以了,属于送分题。

五、Java算法源码

package com.guor.od;import java.util.*;public class OdTest {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String line1 = scanner.nextLine();String line2 = scanner.nextLine();List<String> list = new ArrayList<>();StringBuilder builder = new StringBuilder();for (int i = 0; i < line1.length(); i++) {char c = line1.charAt(i);if (!((c <= 'z' && c >= 'a') || (c <= 'Z' && c >= 'A'))) {if (builder.length() > 0) {list.add(builder.toString());builder.setLength(0);}continue;}if (c == ' ') {if (builder.length() > 0) {list.add(builder.toString());builder.setLength(0);}continue;}if (c == '\'') {if (builder.length() > 0) {list.add(builder.toString());builder.setLength(0);}continue;}builder.append(c);if (i == line2.length() - 1) {if (builder.length() > 0) {list.add(builder.toString());builder.setLength(0);}}}boolean flag = false;for (String str : list) {if (str.startsWith(line2)) {flag = true;System.out.print(str + " ");}}if (flag == false) {System.out.println(line2);}}
}

六、效果展示

1、输入

I love you
He

2、输出

He

在这里插入图片描述


🏆下一篇:华为OD机试 - 荒岛求生 - 栈Stack(Java 2023 B卷 100分)

🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/70041.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stable diffusion实践操作-embedding(TEXTUAL INVERSION)

系列文章目录 本文专门开一节写图生图相关的内容&#xff0c;在看之前&#xff0c;可以同步关注&#xff1a; stable diffusion实践操作 文章目录 系列文章目录前言1、embeddding的功能2、如何去下载(https://civitai.com/models)2.1 筛选 TEXTUAL INVERSION2.2 筛选出来2.3 下…

数学建模--Topsis评价方法的Python实现

目录 1.算法流程简介 2.算法核心代码 3.算法效果展示 1.算法流程简介 """ TOPSIS(综合评价方法):主要是根据根据各测评对象与理想目标的接近程度进行排序. 然后在现有研究对象中进行相对优劣评价。 其基本原理就是求解计算各评价对象与最优解和最劣解的距离…

HGDB-修改分区表名称及键值

瀚高数据库 目录 环境 文档用途 详细信息 环境 系统平台&#xff1a;N/A 版本&#xff1a;4.5.7 文档用途 使用存储过程拼接SQL&#xff0c;修改分区名称、分区键值、并重新加入主表&#xff0c;适用于分区表较多场景。 详细信息 说明&#xff1a;本文档为测试过程&#xff1…

视频集中存储/云存储/磁盘阵列EasyCVR平台分组批量绑定/取消设备功能详解

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台视频能力丰富灵活&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。视频汇聚融合管理平台EasyCVR既具备传…

Windows下搭建MavLink通信协议环境,并用C++程序测试

搭建环境 git克隆 git clone https://github.com/mavlink/mavlink.git --recursive安装python的future库 pip install future使用可视化工具生成mavlink库 XML是选择消息格式&#xff0c;也可以自定义Out是输出路径Language是生成的语言&#xff0c;我这里是CProtocol是协议…

Zabbix 利用 Grafana 进行图形展示

安装插件 配置数据源 导入模版 查看 1.安装 wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/Packages/grafana-10.0.0-1.x86_64.rpm [rootrocky8 apps]# yum install grafana-10.0.0-1.x86_64.rpm [rootrocky8 apps]# systemctl start grafana-server.service …

肖sir__设计测试用例方法之等价类02_(黑盒测试)

设计测试用例方法之等价类02_&#xff08;黑盒测试&#xff09; 一、掌握常用的设计方法: 黑盒测试方法&#xff1a;等价类、边界值&#xff0c;状态迁移法、场景法、判定表、因果图、正交表&#xff0c;&#xff08;7种&#xff09; 经验测试方法&#xff1a;错误推测法、异常…

ACM模式数组构建二叉树Go语言实现

目的 想输入一个数组&#xff0c;然后构造二叉树 例如数组为[6, 2, 8, 0, 4, 7, 9, -1, -1, 3, 5] 对应的二叉树为&#xff1a; 参考资料 ACM模式数组构建二叉树 重点&#xff1a;如果父节点的数组下标是i&#xff0c;那么它的左孩子下标就是i*21&#xff0c;右孩子下标就是…

LeetCode 1123. 最深叶节点的最近公共祖先:DFS

【LetMeFly】1123.最深叶节点的最近公共祖先 力扣题目链接&#xff1a;https://leetcode.cn/problems/lowest-common-ancestor-of-deepest-leaves/ 给你一个有根节点 root 的二叉树&#xff0c;返回它 最深的叶节点的最近公共祖先 。 回想一下&#xff1a; 叶节点 是二叉树…

Leetcode.1123 最深叶节点的最近公共祖先

题目链接 Leetcode.1123 最深叶节点的最近公共祖先 rating : 1607 题目描述 给你一个有根节点 root 的二叉树&#xff0c;返回它 最深的叶节点的最近公共祖先 。 回想一下&#xff1a; 叶节点 是二叉树中没有子节点的节点&#xff1b;树的根节点的 深度 为 0 0 0&#xff0…

实战:大数据Flink CDC同步Mysql数据到ElasticSearch

文章目录 前言知识积累CDC简介CDC的种类常见的CDC方案比较 Springboot接入Flink CDC环境准备项目搭建 本地运行集群运行将项目打包将包传入集群启动远程将包部署到flink集群 写在最后 前言 前面的博文我们分享了大数据分布式流处理计算框架Flink和其基础环境的搭建&#xff0c…

LeetCode73.矩阵置零

这道题我感觉还是挺简单的&#xff0c;一下子就想到了&#xff0c;不过我的算法很简单很垃圾&#xff0c;效率很低&#xff0c;我一看完题的想法就是直接遍历一遍数组&#xff0c;然后把为0的元素的行和列都存起来&#xff0c;然后把这些行和列都置零就好了&#xff0c;但是这里…

万物互联:软件与硬件的协同之道

在当今数字化时代&#xff0c;我们身边的一切似乎都与计算机和互联网有关。从智能手机到智能家居设备&#xff0c;从自动驾驶汽车到工业生产线&#xff0c;无论我们走到哪里&#xff0c;都能看到软件和硬件的协同作用。本文将探讨这种协同作用&#xff0c;解释软件和硬件如何相…

NIO原理浅析(二)

IO分类 阻塞和非阻塞 阻塞IO&#xff1a;用户空间引发内核空间的系统调用&#xff0c;需要内核IO操作彻底完成之后&#xff0c;返回值才会返回到用户空间&#xff0c;执行用户的操作。阻塞指的用户空间程序的执行状态&#xff0c;用户空间程序需要等到IO操作彻底执行完毕。j…

前端面试0906

// 请给出输出结果 function foo(){ console.log(a); } function bar(){ var a 3; console.log(this.a); foo(); } var a 2; bar(); 2 2 // 请从下面的问题中挑选3道进行回答 1. 防抖和节流分别是什么&#xff0c;一般用在什么场景&#xff1f; 防抖&#xff08;Debounc…

简易版人脸识别qt opencv

1、配置文件.pro #------------------------------------------------- # # Project created by QtCreator 2023-09-05T19:00:36 # #-------------------------------------------------QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgetsTARGET 01_face TEMP…

代码随想录笔记--二叉树篇

目录 1--递归遍历 1-1--前序遍历 1-2--中序遍历 1-3--后序遍历 2--迭代遍历 2-1--前序遍历 2-2--后序遍历 2-3--中序遍历 3--二叉树的层序遍历 4--翻转二叉树 5--对称二叉树 6--二叉树最大深度 7--二叉树的最小深度 8--完全二叉树节点的数量 9--平衡二叉树 10-…

PyCharm 虚拟环境搭建

Anaconda搭建虚拟环境 安装 前往Anaconda官网&#xff08;https://www.anaconda.com/products/individual&#xff09;&#xff0c;下载适合您操作系统的Anaconda版本&#xff0c;建议下载最新的稳定版。这里可以直接进入这个&#xff1a;https://repo.anaconda.com/archive/ …

AVR128单片机 USART通信控制发光二极管显示

一、系统方案 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计 1、首先是系统初始化 void port_init(void) { PORTA 0xFF; DDRA 0x00;//输入 PORTB 0xFF;//低电平 DDRB 0x00;//输入 PORTC 0xFF;//低电平 DDRC 0xFF;//输出 PORTE 0xFF; DDRE 0xfE;//输出 PO…

无涯教程-JavaScript - DCOUNT函数

描述 DCOUNT函数返回包含与您指定条件匹配的列表或数据库的列中的数字的单元格的计数。 语法 DCOUNT (database, field, criteria)争论 Argument描述Required/Optionaldatabase 组成列表或数据库的单元格范围。 数据库是相关数据的列表,其中相关信息的行是记录,数据的列是…