华为2014最新机试样题

来源:互联网 发布:win10 dock软件 编辑:程序博客网 时间:2024/05/20 14:43

1.记票统计

模拟n个人参加选举的过程,并输出选举结果:假设候选人有四人,分别用“A”、”B”、”C”、”D”表示,选举时开始计票, 若输入的不是“A”、”B”、”C”、”D”则视为无效票。选举结束后获取各个候选人的得票数以及无效票的个数,输出结果以添加候选人的顺序进行顺序输出,最后一行为无效的数量。同时getVoteResult命令为结束命令。

输入:

输入为多行形式输入,每一行为一条命令。输入的命令只会是有效命令不会有非法命令,但可能存在非法的投票,上面已经描述了。

添加候选人的命令如下:addCandidate为命令 xx1为候选人

addCandidate xx1

投票的命令如下:vote为命令 xx1为候选人的字符串

vote xx1

统计投票的命令如下:getVoteResult为命令

getVoteResult


输出:

输出结果以添加候选人的顺序进行顺序输出,最后一行为无效的数量。

样例输入:

addCandidate xx1addCandidate xx2addCandidate xx3addCandidate xx4addCandidate xx5addCandidate xx6vote xx1vote xx3vote xx4vote xx1vote xx2vote xx7vote xx4vote xx5vote xx3vote xx2vote xx1vote xx7getVoteResult

样例输出:

xx1 3xx2 2xx3 2xx4 2xx5 1xx6 02

2.求最大递增数

输入一串数字,找到其中包含的最大递增数。递增数是指相邻的数位从小到大排列的数字。如: 2895345323,递增数有:289,345,23, 那么最大的递减数为345

输入:

输入一串数字,默认这串数字是正确的,即里面不含有字符/空格等情况

输出:

输出最大递增数

样例输入:

123526897215

样例输出:

2689

3.Word Maze(单词迷宫)


 Word Maze 是一个网络小游戏,你需要找到以字母标注的食物,但要求以给定单词字母的顺序吃掉。如上图,假设给定单词if,你必须

先吃掉i然后才能吃掉f。

你现在处于一个迷宫Maze(n×m的矩阵)当中,里面到处都是以字母标注的食物,但你只能吃掉能连成给定单词W的食物。

如下图,指定W为“SOLO”,则在地图中红色标注了单词“SOLO”。


注意区分英文字母大小写,你只能上下左右行走。

输入:

输入第一行包含两个整数n、m(0<n, m<21)分别表示n行m列的矩阵,第二行是长度不超过100的单词W,从第3行到底n+3行是只包含大小写英文字母的长度为m的字符串。

输出:

如果能在地图中连成给定的单词,则输出“YES”,否则输出“NO”。注意:每个字母只能用一次。

样例输入:

5 5

SOLO

CPUCY

EKLQH

CRSOL

EKLQO

PGRBC

样例输出:

YES


。 


0 0