华为机试题

来源:互联网 发布:完整消防队源码 编辑:程序博客网 时间:2024/05/29 19:36

机试题为三题编程题
1、输入为两个字符串,统计第二个字符串在第一个字符串中出现的次数。如 输入为aabbaaccaa aa,则输出结果次数为3。

2、输入一个纯数字字符串,输出里面出现频率最高的数字,如123324222, 则输出为2,5,也就是说出现频率最高的为2,出现了5次。

3、输入为三个12位整数,输出为它们的CDKey。CDKey通过一个字符数组映射得到,这个字符数组包括32个元素{2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y},具体的转换规则如下
1)首先分别取这三个数的低16位,再将这三个数的低16位拼接起来得到一个48位的环形数组,将这个48位的数组由低到高,依次取5位得到数组下标,从而得到相对于的字符,最后得到14个字符。
2)将这14个字符的ASCII码相加得到一个数,取这个数的后10位,再将这个后10位由低到高依次取五位作为数组下标,得到两个字符。将上一步得到的14个字符和这2个字符拼接起来得到最后的CDKey。

如输入为 1 1 1
那么对应的CDKey为3224-2262-2A22-J2CQ

0 0