第一行输入一个整数
代表候选人数。
第二行输入
个长度为
、仅由大写字母构成的字符串
,代表候选人的名字。保证候选人的名字互不相同。
第三行输入一个整数
代表投票人数。
第四行输入
个长度为
、仅由大写字母构成的字符串
,代表投票内容。
对于每一位候选人,新起一行。先输出其名字,随后输出一个空格、一个冒号、一个空格作为间隔,最后输出其获得的票数。形如
,其中
是候选人的名字,
是候选人的票数。
最后一行以相同的格式输出无效票的数量。形如
,其中
是无效票的数量。
4 A B C D 8 A D E CF A GG A B
A : 3 B : 1 C : 0 D : 1 Invalid : 3
在这个样例中,
三张票是无效的。
while True:
try:
n=int(input())#记录没用的玩意儿
people = input().split()#记录候选人,以空格区分
v = int(input())#记录总票数
volt = input().split()#记录投票给谁,以空格区分
a=[]
for i in range (len(people)):
a.append(volt.count(people[i]))#用于记录有效票数,查找每个有效候选人的总票数
str1 =people[i]+" : "+str(volt.count(people[i]))#按顺序按格式打印
print(str1)
b=list(map(int,a))#元素转换为int格式
b=sum(b)#求全部有效票数总和
invalid = v - b#全部票数-总有效票数=无效票数
print('Invalid : '+str(invalid))#打印无效票数
except:
break while True:
try:
num = int(input())
zeros = [0 for _ in range(num)]
order = input().split(' ')
candidates = dict(zip(order, zeros))
vote_num = int(input())
votes = input().split(' ')
invalid = 0
for i in range(vote_num):
if votes[i] in candidates:
candidates[votes[i]] += 1
else:
invalid += 1
for i in range(num):
print(order[i], ':', candidates[order[i]])
print('Invalid :', invalid)
except EOFError:
break while True:
try:
n=int(input())
name=input().split()
m=int(input())
vote=input().split()
res=[]
num=0
for i in name:
res.append(str(vote.count(i)))
num+=vote.count(i)
for i in range(n):
print(name[i],':',res[i])
#print(res)
print('Invalid',':',str(len(vote)-num))
except:
break while True:
try:
H_nums = int(input())
H = input().split()
V_nums = int(input())
V = input().split()
dic = {}
for p in H:
dic[p] = 0
nums = 0
for val in V:
if val in H:
dic[val]+=1
nums+=1
for key in dic:
print(key,':',dic[key])
print('Invalid',':',len(V)-nums)
except:
break
# 思路:1)任意错的地方是直接把候选人固定成例题给的ABCD四个人,要注意人数和票数是
# 随着不同的输入而改变的。需要迭代取出。
# 2)本题创建字典的时候不能用以往的方法:如果存在于字典中,次数加1,若不存在,次数为1.
# 本题的每个候选人必须存在于字典中,故需提前将每个候选人都加入字典中。
# 3)注意输出的格式:冒号两侧有一个空格
while True:
try:
human_num = int(input().strip())
human_name = input().strip().split(' ')
ticket_num = int(input().strip())
ticket = input().strip().split(' ')
# 构建候选人以及票数的字典项。并将每个候选人的票数初始化为0,手动添加非法的票数项
dic = {}
for human in human_name:
dic[human] = 0
dic['Invalid'] = 0
for t in ticket:
if t not in human_name:
dic['Invalid'] += 1
else:
dic[t] += 1
# 输出结果(包括候选人的票数和非法票数)
for human in human_name:
print(human+' : '+str(dic[human]))
print('Invalid'+' : '+str(dic['Invalid']))
except:
break
while 1:
try:
c,c_name,v,v_ticket = int(input()),input().split(),int(input()),input().split()
dic = {}
# 统计票数
for k in v_ticket:
dic[k] = dic.get(k,0)+1
# dic = Counter(v_ticket)
# 输出,按候选人顺序格式
valid = 0
for i in c_name:
print("%s : %s"%(i,dic.get(i,0)))
valid += dic.get(i,0)
print("Invalid : %s"%(len(v_ticket)-valid))
except:
break while True:
try:
n = int(input())
name = input().split()
m = int(input())
s = input().split()
error = m
for i in name:
print("%s : %d"%(i,s.count(i)))
error -= s.count(i)
print('Invalid : %d'%(error))
except:
break 给一个python的方法,这题的坑是输出的冒号前后要留空格...醉了醉了
def get_result(rm, tp):
dd = dict()
for i in rm:
dd[i] = 0
dd['Invalid'] = 0
for j in tp:
if j in dd:
dd[j] += 1
else:
dd['Invalid'] += 1
for m, n in dd.items():
print('%s : %s' % (m, n))
while True:
try:
rs = int(input())
rm = input().split()
ps = int(input())
tp = input().split()
get_result(rm, tp)
except:
break
while True:
try:
num=int(input())
name=[i for i in input().split()]
v_num=int(input())
vote=[i for i in input().split()]
vote_dic=dict.fromkeys(name,0)
for i in vote:
for j in name:
if i==j:
vote_dic[i]+=1
for (i,j) in vote_dic.items():
print("{0}:{1}".format(i,j))
print("Invalid:",v_num-sum(vote_dic.values()))
except:
break while True:
try:
n = int(input())
candidate = input().split()
m = int(input())
voters = input().split()
for i in range(len(candidate)):
count = []
for j in range(len(voters)):
if candidate[i] == voters[j]:
count.append(candidate[i])
print(candidate[i]+' '+':'+' '+str(len(count)))
invalid = 0
for i in voters:
if i not in candidate:
invalid += 1
print('Invalid'+' '+':'+' '+str(invalid))
except:
break while True:
try:
n1,a,n2,b,count = int(input()),input().split(),int(input()),input().split(),0
for i in a:
if i in b:
count += b.count(i)
print(str(i) + " : " + str(b.count(i)))
else:
print(str(i) + " : " + str(b.count(i)))
print("Invalid : " + str(n2-count))
except:
break while True:
try:
houn = input()
hou_l = input().split()
piaon= int(input())
piao_l = input().split()
youxiao =0
for i in hou_l:
if i in piao_l:
print(i +" : "+str(piao_l.count(i)))
youxiao += piao_l.count(i)
else:
print(i +" : "+str(piao_l.count(i)))
print('Invalid : '+str(piaon-youxiao))
except:
break 无票输出0的情况不要忘了,不然根本不知道错哪里
# -*- coding: utf-8 -*-
# !/usr/bin/python3
# 解题思路:利用字典保存合法次数,不合法的单独用invalid记录
while True:
try:
m = int(input())
candidates = input().split()
n = int(input())
votes = input().split()
dic = {}
invalid = 0
for i in candidates:
dic[i] = 0
for i in votes:
if i in candidates:
dic[i] += 1
else:
invalid += 1
for i in candidates:
print('{0} : {1}'.format(i, dic[i]))
print('Invalid : {0}'.format(invalid))
except:
break while True: try: n = int(input()) valid_names = list(map(str, input().split())) total = int(input()) vote = list(map(str, input().split())) vote_info = dict(); invalid = 0 for elem in vote: if elem in valid_names: if elem not in vote_info.keys(): vote_info[elem] = 1 else: vote_info[elem]+=1 else: invalid+=1 for key in valid_names: if key in vote_info.keys(): print(key+' : '+str(vote_info[key])) else: print(key + ' : ' + str(0)) print("Invalid : "+str(invalid)) except: break
while True:
try:
n=int(input().strip())
name=list(input().strip().split(' '))
#print(name)
num=int(input().strip())
piao=list(input().strip().split(' '))
#print(piao)
dict1={}
worng=0
for i in piao:
if i in name:
if i not in dict1:
dict1[i]=1
else:
dict1[i]+=1
else:
worng+=1
#print(dict1)
for i in name:
if i in dict1:
print(i+' : '+str(dict1[i]))
else:
print(i+' : '+str(0))
print('Invalid :',worng)
except:
break题目没说完整,有点坑
from collections import Counter
while True:
try:
a, b, c, d, invalid = input(), input().split(), input(), input().split(), 0
cc = Counter(d)
for i in b:
print(i + " : " + str(cc[i]))
invalid+=cc[i]
print("Invalid : " + str(len(d)-invalid))
except:
break