![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
华为机试
大力pig
这个作者很懒,什么都没留下…
展开
-
HJ92 在字符串中找出连续最长的数字串 - 通过用例18/20
描述输入一个字符串,返回其最长的数字子串,以及其长度。若有多个最长的数字子串,则将它们全部输出(按原字符串的相对位置)本题含有多组样例输入。数据范围:字符串长度1 \le n \le 200 \1≤n≤200, 保证每组输入都至少含有一个数字输入描述:输入一个字符串。1<=len(字符串)<=200输出描述:输出字符串中最长的数字字符串和它的长度,中间用逗号间隔。如果有相同长度的串,则要一块儿输出(中间不要输出空格)。示例1输入:abcd12...原创 2022-05-03 21:44:00 · 655 阅读 · 0 评论 -
HJ65 查找两个字符串a,b中的最长公共子串
描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!数据范围:字符串长度1\le length \le300 \1≤length≤300进阶:时间复杂度:O(n^3)\O(n3),空间复杂度:O(n)\O(n)输入描述:输入两个字符串输出描述:返回重复出现的字符示例1输入:abcdefghijklmnopabcsafjklm...原创 2022-05-03 19:43:31 · 614 阅读 · 0 评论 -
HJ55 挑7
描述输出 1到n之间 的与 7 有关数字的个数。一个数与7有关是指这个数是 7 的倍数,或者是包含 7 的数字(如 17 ,27 ,37 ... 70 ,71 ,72 ,73...)数据范围:1 \le n \le 30000 \1≤n≤30000输入描述:一个正整数 n 。( n 不大于 30000 )输出描述:一个整数,表示1到n之间的与7有关的数字个数。示例1输入:20复制输出:3复制说明:输入20,1到2...原创 2022-05-03 13:06:05 · 870 阅读 · 0 评论 -
HJ45 名字的漂亮度
描述给出一个字符串,该字符串仅由小写字母组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个不同字母拥有相同的“漂亮度”。字母忽略大小写。给出多个字符串,计算每个字符串最大可能的“漂亮度”。本题含有多组数据。数据范围:输入的名字长度满足1 \le n \le 10000 \1≤n≤10000输入描述:第一行一个整数N,接下来N行每行一个字符串输出描述:每个字符串可能的最大漂亮程度示例...原创 2022-05-02 19:35:23 · 92 阅读 · 0 评论 -
HJ75 公共子串计算
描述给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。数据范围:字符串长度:1\le s\le 150\1≤s≤150进阶:时间复杂度:O(n^3)\O(n3),空间复杂度:O(n)\O(n)输入描述:输入两个只包含小写字母的字符串输出描述:输出一个整数,代表最大公共子串的长度示例1输入:asdfaswerasdfaswer复制输出:6复制...原创 2022-05-02 18:47:11 · 101 阅读 · 0 评论 -
HJ32 密码截取
描述Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。比如进行下列变化ABBA->12ABBA,ABA->ABAKK,123321->51233214 。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathcer的工作量实在是太大了,他只能向电脑高手求助,你能帮Catcher找出最长的有效...原创 2022-05-02 18:22:02 · 212 阅读 · 0 评论 -
HJ90 合法IP
描述IPV4地址可以用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此正号不需要出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。现在需要你用程序来判断IP是否合法。数据范围:数据组数:1\le t\le 18\1≤t≤18进阶:时间复杂度:O(n)\O(n),空间复杂度:O(n)\O(n)输入描述:输入一个ip地址,保证不包含空格...原创 2022-05-02 17:06:14 · 643 阅读 · 0 评论 -
HJ38 求小球落地5次后所经历的路程和第5次反弹的高度
描述假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第5次落地时,共经历多少米?第5次反弹多高?数据范围:输入的小球初始高度满足1 \le n \le 1000 \1≤n≤1000,且保证是一个整数输入描述:输入起始高度,int型输出描述:分别输出第5次落地时,共经过多少米以及第5次反弹多高。注意:你可以认为你输出保留六位或以上小数的结果可以通过此题。示例1输入:1复制输出:2.8750.03125复制...原创 2022-05-02 16:16:39 · 197 阅读 · 0 评论 -
HJ33 整数与IP地址间的转换
描述原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数。举例:一个ip地址为10.0.3.193每段数字相对应的二进制数100000101000000000030000001119311000001组合起来即为:00001010000...原创 2022-05-02 14:44:00 · 599 阅读 · 0 评论 -
HJ74 参数解析
描述在命令行输入如下命令:xcopy/sc:\\ d:\\e,各个参数如下:参数1:命令字xcopy参数2:字符串/s参数3:字符串c:\\参数4:字符串d:\\e请编写一个参数解析程序,实现将命令行各个参数解析出来。解析规则:1.参数分隔符为空格2.对于用""包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy/s "C:\\programfiles" "d:\"时,参数仍然是4个,第3个参数应该是字符串C:\\progr...原创 2022-05-01 10:47:42 · 421 阅读 · 0 评论 -
HJ29 字符串加解密
描述对输入的字符串进行加解密,并输出。加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。解密方法为加密的逆过程。数据范围:输入的两个字符串长度满足1 \le n \le 1000 \1≤n≤1000,保证输入的字符串都是只由大小写字母或者数字组成输入描述:第一行输入一串要加密的密码第二行输入一串加过密的密码...原创 2022-05-01 10:29:39 · 187 阅读 · 0 评论 -
HJ59 找出字符串中第一个只出现一次的字符
描述找出字符串中第一个只出现一次的字符数据范围:输入的字符串长度满足1 \le n \le 1000 \1≤n≤1000输入描述:输入一个非空字符串输出描述:输出第一个只出现一次的字符,如果不存在输出-1示例1输入:asdfasdfo复制输出:o复制package org.example.medium;import java.util.Scanner;public class Hj59 { public ...原创 2022-04-30 20:10:07 · 675 阅读 · 0 评论 -
HJ57 高精度整数加法
描述输入两个用字符串 str 表示的整数,求它们所表示的数之和。数据范围:1 \le len(str) \le 10000 \1≤len(str)≤10000输入描述:输入两个字符串。保证字符串只含有'0'~'9'字符输出描述:输出求和后的结果示例1输入:98765432101234567890复制输出:11111111100复制package org.example.medium;import java.math.BigDec...原创 2022-04-30 19:11:46 · 613 阅读 · 0 评论 -
HJ26 字符串排序
描述编写一个程序,将输入字符串中的字符按如下规则排序。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。如,输入: Type 输出: epTy规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。如,输入: BabA 输出: aABb规则 3 :非英文字母的其它字符保持原来的位置。如,输入: By?e 输出: Be?y数据范围:输入的字符串长度满足1 \le n \le 1000 \1≤n≤1000输入描述:输入字符串输出描述:输出字符...原创 2022-04-30 18:58:13 · 231 阅读 · 0 评论 -
HJ14 字符串排序
描述给定 n 个字符串,请对 n 个字符串按照字典序排列。数据范围:1 \le n \le 1000 \1≤n≤1000,字符串长度满足1 \le len \le 100 \1≤len≤100输入描述:输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。输出描述:数据输出n行,输出结果为按照字典序排列的字符串。示例1输入:9captocatcardtwotooupboat...原创 2022-04-30 14:39:12 · 352 阅读 · 0 评论 -
HJ80 整型数组合并
描述题目标题:将两个整型数组按照升序合并,并且过滤掉重复数组元素。输出时相邻两数之间没有空格。输入描述:输入说明,按下列顺序输入:1输入第一个数组的个数2输入第一个数组的数值3输入第二个数组的个数4输入第二个数组的数值输出描述:输出合并之后的数组示例1输入:31 2 54-1 0 3 2复制输出:-101235复制package org.example.simple;import java.util.S...原创 2022-04-30 11:10:41 · 153 阅读 · 0 评论 -
HJ94 记票统计
描述请实现一个计票统计系统。你会收到很多投票,其中有合法的也有不合法的,请统计每个候选人得票的数量以及不合法的票数。(注:不合法的投票指的是投票的名字不存在n个候选人的名字中!!)数据范围:每组输入中候选人数量满足1 \le n \le 100 \1≤n≤100,总票数量满足1 \le n \le 100 \1≤n≤100输入描述:第一行输入候选人的人数n,第二行输入n个候选人的名字(均为大写字母的字符串),第三行输入投票人的人数,第四行输入投票。输出描述:按照输...原创 2022-04-30 10:51:10 · 242 阅读 · 0 评论 -
HJ60 查找组成一个偶数最接近的两个素数
描述任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。数据范围:输入的数据满足4 \le n \le 1000 \4≤n≤1000输入描述:输入一个大于2的偶数输出描述:从小到大输出两个素数示例1输入:20复制输出:713复制示例2输入:4复制输出:22复制package org.example.simple;impor...原创 2022-04-29 19:24:38 · 73 阅读 · 0 评论 -
HJ5 进制转换
描述写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。数据范围:保证结果在1 \le n \le 2^{31}-1 \1≤n≤231−1输入描述:输入一个十六进制的数值字符串。输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。示例1输入:0xAA复制输出:170复制package org.example.simple;import java.util.Scanner;public class Hj5 { ...原创 2022-04-29 18:55:53 · 958 阅读 · 0 评论 -
HJ15 求int型正整数在内存中存储时1的个数
描述输入一个 int 型的正整数,计算出该 int 型数据在内存中存储时 1 的个数。数据范围:保证在 32 位整型数字范围内输入描述:输入一个整数(int类型)输出描述:这个数转换成2进制后,输出1的个数示例1输入:5复制输出:2复制示例2输入:0复制输出:0复制package org.example.simple;import java.util.Scanner;public class Hj15 ...原创 2022-04-29 13:31:00 · 287 阅读 · 0 评论 -
HJ86 求最大连续bit数
描述求一个int类型数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1数据范围:数据组数:1\le t\le 5\1≤t≤5,1\le n\le 500000\1≤n≤500000进阶:时间复杂度:O(logn)\O(logn),空间复杂度:O(1)\O(1)输入描述:输入一个int类型数字输出描述:输出转成二进制之后连续1的个数示例1输入:200复制输出:2复制说明:200的二进制表示是110...原创 2022-04-29 13:24:56 · 155 阅读 · 0 评论 -
HJ97 记负均正
描述首先输入要输入的整数个数n,然后输入n个整数。输出为n个整数中负数的个数,和所有正整数的平均值,结果保留一位小数。0即不是正整数,也不是负数,不计入计算。如果没有正数,则平均值为0。数据范围:1 \le n\ \le 2000 \1≤n≤2000,输入的整数都满足|val| \le 1000 \∣val∣≤1000输入描述:首先输入一个正整数n,然后输入n个整数。输出描述:输出负数的个数,和所有正整数的平均值。示例1输入:11 1 2 3 ...原创 2022-04-29 11:29:32 · 114 阅读 · 0 评论 -
HJ81 字符串字符匹配
描述判断短字符串S中的所有字符是否在长字符串T中全部出现。请注意本题有多组样例输入。数据范围:1\le len(S),len(T)\le200\1≤len(S),len(T)≤200进阶:时间复杂度:O(n)\O(n),空间复杂度:O(n)\O(n)输入描述:输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。输出描述:如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。示例1输入...原创 2022-04-29 10:28:36 · 200 阅读 · 0 评论 -
HJ81 字符串字符匹配
描述判断短字符串S中的所有字符是否在长字符串T中全部出现。请注意本题有多组样例输入。数据范围:1\le len(S),len(T)\le200\1≤len(S),len(T)≤200进阶:时间复杂度:O(n)\O(n),空间复杂度:O(n)\O(n)输入描述:输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。输出描述:如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。示例1输入:...原创 2022-04-29 10:06:02 · 501 阅读 · 0 评论 -
HJ62 查找输入整数二进制中1的个数
描述输入一个正整数,计算它在二进制下的1的个数。注意多组输入输出!!!!!!数据范围:1 \le n \le 2^{31}-1 \1≤n≤231−1输入描述:输入一个整数输出描述:计算整数二进制中1的个数示例1输入:5复制输出:2复制说明:5的二进制表示是101,有2个1 示例2输入:0复制输出:0复制package org.example.simple;import java.uti...原创 2022-04-28 21:18:02 · 317 阅读 · 0 评论 -
HJ100 等差数列
描述等差数列2,5,8,11,14。。。。(从 2 开始的 3 为公差的等差数列)输出求等差数列前n项和数据范围:1 \le n \le 1000 \1≤n≤1000输入描述:输入一个正整数n。输出描述:输出一个相加后的整数。示例1输入:2复制输出:7复制说明:2+5=7 示例2输入:275复制输出:113575复制说明:2+5+...+821+824=113575 // ...原创 2022-04-28 20:32:20 · 234 阅读 · 0 评论 -
HJ108 求最小公倍数
描述正整数A和正整数B的最小公倍数是指能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。数据范围:1 \le a,b \le 100000 \1≤a,b≤100000输入描述:输入两个正整数A和B。输出描述:输出A和B的最小公倍数。示例1输入:5 7复制输出:35复制示例2输入:2 4复制输出:4复制import java.util.Scanner;public class M...原创 2022-04-28 20:20:36 · 490 阅读 · 0 评论 -
HJ85 最长回文子串
描述给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。所谓回文串,指左右对称的字符串。所谓子串,指一个字符串删掉其部分前缀和后缀(也可以不删)的字符串数据范围:字符串长度1\le s\le 350\1≤s≤350进阶:时间复杂度:O(n)\O(n),空间复杂度:O(n)\O(n)输入描述:输入一个仅包含小写字母的字符串输出描述:返回最长回文子串的长度示例1输入:cdabbacc复制输出:4复制说明:abba为最长的回文...原创 2022-04-28 20:06:38 · 136 阅读 · 0 评论 -
HJ13 句子逆序
描述将一个英文语句以单词为单位逆序排放。例如“Iamaboy”,逆序排放后为“boyaamI”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符数据范围:输入的字符串长度满足1 \le n \le 1000 \1≤n≤1000注意本题有多组输入输入描述:输入一个英文语句,每个单词用空格隔开。保证输入只包含空格和字母。输出描述:得到逆序的句子示例1输入:I am a boy复制输出:boy a am I复制...原创 2022-04-25 09:51:49 · 102 阅读 · 1 评论 -
HJ84 统计大写字母个数
描述找出给定字符串中大写字符(即'A'-'Z')的个数。数据范围:字符串长度:1\le |s|\le 250\1≤∣s∣≤250字符串中可能包含空格或其他字符进阶:时间复杂度:O(n)\O(n),空间复杂度:O(n)\O(n)输入描述:对于每组样例,输入一行,代表待统计的字符串输出描述:输出一个整数,代表字符串中大写字母的个数示例1输入:A 1 0 1 1150175017(&^%&$vabovbaoadd 123#$%#%#O复制...原创 2022-04-25 09:46:16 · 130 阅读 · 0 评论 -
HJ40 统计字符
描述输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。数据范围:输入的字符串长度满足1 \le n \le 1000 \1≤n≤1000输入描述:输入一行字符串,可以有空格输出描述:统计其中英文字符,空格字符,数字字符,其他字符的个数示例1输入:1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;p0-=\\][复制输出:2631012复制 public static void ma...原创 2022-04-25 09:41:29 · 86 阅读 · 0 评论 -
HJ31 单词倒排
描述对字符串中的所有单词进行倒排。说明:1、构成单词的字符只有26个大写或小写英文字母;2、非构成单词的字符均视为单词间隔符;3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;4、每个单词最长20个字母;数据范围:字符串长度满足1 \le n \le 10000 \1≤n≤10000输入描述:输入一行,表示用来倒排的句子输出描述:输出句子的倒排结果示例1输入:I am a...原创 2022-04-25 09:32:51 · 144 阅读 · 0 评论 -
HJ21 简单密码
描述现在有一种密码变换算法。九键手机键盘上的数字与字母的对应:1--1,abc--2,def--3,ghi--4,jkl--5,mno--6,pqrs--7,tuv--8wxyz--9,0--0,把密码中出现的小写字母都变成九键键盘对应的数字,如:a 变成 2,x 变成 9.而密码中出现的大写字母则变成小写之后往后移一位,如:X ,先变成小写,再往后移一位,变成了 y ,例外:Z 往后移是 a 。数字和其它的符号都不做变换。数据范围: 输入的字符串长度满足1 \l...原创 2022-04-24 19:20:18 · 235 阅读 · 0 评论 -
HJ96 表示数字
描述将一个字符中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。数据范围:字符串长度满足1 \le n \le 100 \1≤n≤100输入描述:输入一个字符串输出描述:字符中所有出现的数字前后加上符号“*”,其他字符保持不变示例1输入:Jkdi234klowe90a3复制输出:Jkdi*234*klowe*90*a*3*复制 public static void main(String[] args) { ...原创 2022-04-24 17:30:01 · 418 阅读 · 0 评论 -
HJ106 字符逆序
描述将一个字符串str的内容颠倒过来,并输出。数据范围:1 \le len(str) \le 10000\1≤len(str)≤10000输入描述:输入一个字符串,可以有空格输出描述:输出逆序的字符串示例1输入:I am a student复制输出:tneduts a ma I复制示例2输入:nowcoder复制输出:redocwon复制public static void main(String[] ar...原创 2022-04-24 17:01:10 · 102 阅读 · 0 评论 -
HJ23 删除字符串中出现次数最少的字符
描述实现删除字符串中出现次数最少的字符,若出现次数最少的字符有多个,则把出现次数最少的字符都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。数据范围:输入的字符串长度满足1 \le n \le 20 \1≤n≤20,保证输入的字符串中仅出现小写字母输入描述:字符串只包含小写英文字母,不考虑非法输入,输入的字符串长度小于等于20个字节。输出描述:删除字符串中出现次数最少的字符后的字符串。示例1输入:aabcddd输出:aaddd...原创 2022-04-24 15:46:00 · 166 阅读 · 0 评论 -
HJ12 字符串反转
描述输入一个整数,将这个整数以字符串的形式逆序输出程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001数据范围:0 \le n \le 2^{30}-1 \0≤n≤230−1输入描述:输入一个int整数输出描述:将这个整数以字符串的形式逆序输出示例1输入:1516000输出:0006151示例2输入:0输出:0复制public static void main(String[]...原创 2022-04-24 14:16:18 · 80 阅读 · 0 评论 -
HJ11 数字颠倒
描述输入一个整数,将这个整数以字符串的形式逆序输出程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001数据范围:0 \le n \le 2^{30}-1 \0≤n≤230−1输入描述:输入一个int整数输出描述:将这个整数以字符串的形式逆序输出示例1输入:1516000输出:0006151示例2输入:0输出:0复制import java.util.InputMismatc...原创 2022-04-24 13:57:56 · 319 阅读 · 0 评论 -
HJ10 字符个数统计
描述编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3 。数据范围:1 \le n \le 500 \1≤n≤500输入描述:输入一行没有空格的字符串。输出描述:输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。示例1输入...原创 2022-04-24 13:37:03 · 147 阅读 · 0 评论 -
HJ4 字符串分隔
题目描述•输入一个字符串,请按长度为8拆分每个输入字符串并进行输出;•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。输入描述:连续输入字符串(每个字符串长度小于等于100)输出描述:依次输出所有分割后的长度为8的新字符串示例1输入:abc输出:abc00000解法 public static void main(String[] args) { Scanner scanner = new Scanner(System.in)..原创 2022-04-24 13:12:24 · 72 阅读 · 0 评论