题解 | 记票统计

a=int(input())#候选人个数
b=list(input().split())#候选人名字
c=int(input())#投票人个数
d=list(input().split())#投票人投候选人的名字
c = list(map(lambda x: 0, range(len(b))))
invlid=0#计算无效字母
for d_name in d:
    if d_name in b:
        for nub in range(len(b)):
            if d_name==b[nub]:
                c[nub]=c[nub]+1
    else:
        invlid=invlid+1
for i in range(len(b)):
    print("{} : {}".format(b[i],c[i]))
print("Invalid :",invlid)
首先将候选人姓名个数,投票人个数,和票名赋值给四个变量。创建一个全0列表c,列表长度等于候选人名字。遍历投票名,如果票名在候选人名字列表中,再遍历候选人名字列表,假如票名等于候选人名字,列表c相应的位置的元素+1.如果票名不在候选人名字列表中,存入invalid变量中并计数




全部评论

相关推荐

双非本科小鼠:27兄弟,不应该还在享受校园吗哈哈😂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务