历年题解 CCF CSP历年题解(python)
样例输入:
5
1 2 1 1 3
题目链接:201412-1门禁系统
问题分析: 建立一个字典{编号:次数},若编号在字典中不存在,向字典添加新键值对{编号:1},用字典方式比直接开辟1001个编号列表的空间使用小
满分例程:
n=int(input())
l=list(map(int,input().split()))
di={}
num=[]
for i in range(n):
if l[i] not in di:
di[l[i]]=1#添加新键值对
else:
di[l[i]]+=1
num+=[di[l[i]]]
print(num[0],end='')
for i in range(1,n):
print('',num[i],end='')
#直接开辟1001个编号列表
n=int(input())
num=[]
for i in range(1001):
num+=[0]
s=list(map(int,input().split()))
for i in range(n):
num[s[i]]+=1
if i == 0:
print(num[s[i]],end='')
else:
print('',num[s[i]],end='')