2020年4月15 华为实习生笔试题

本文分享了2020年4月华为实习生笔试的三道编程题,包括投票评选算法、寄存器匹配和栈区函数调用链的计算。提供了部分Python实现,并对第三题给出了解题思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#2020年4月华为实习生笔试题

三道大题。编程小白指不定哪个地方是有问题的,大家一起来找茬。

1.题目大意:投票评选,票数最多者当选,票数相同按姓名排序,小者优先。要求输入人名必须为开头大写,其余小写,否则返回‘error.0001’
输入示例:Tom,Lily,Tom,Lucy,Lucy,Jack
输出示例:Lucy
输入示例:Tom,Lily,Tom,Lucy,Lucy,Tom,Jack
输出示例:Tom
python 代码。

import sys

s = sys.stdin.readline().strip()
namelist = []
inputlist = s.split(',')
# print(inputlist)
flag = False
for ch in inputlist:
    if 'A' <= ch[0] <= 'Z' and 'a' <= (ch[1:len(ch)]) <= 'z':
        flag = True
    else:
        flag = False
        break
if flag == True:
    numlist = [0 for i in range(len(inputlist))]
    # print(numlist)
    for i in range(len(inputlist)):
        if inputlist[i] not in namelist:
            namelist.append(inputlist[i])
            # print(namelist)
            numlist[len(namelist) - 1] += 1
        else:
            a = namelist.index(inputlist[i])
            numlist[a] += 1
    maxnum = max(numlist)
    if 0 < maxnum < 100:
        # print(numlist)
        higest_index = numlist.index(maxnum)
        higest_person = namelist[higest_index]
        for i in range(len(numlist)):
            if numlist[i] == maxnum:
                highest_inde
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值