結果

問題 No.447 ゆきこーだーの雨と雪 (2)
ユーザー vockyX
提出日時 2016-11-18 23:34:59
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 1,659 bytes
コンパイル時間 147 ms
コンパイル使用メモリ 12,928 KB
実行使用メモリ 12,800 KB
最終ジャッジ日時 2024-11-26 08:40:53
合計ジャッジ時間 2,600 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 WA * 1
other WA * 25
権限があれば一括ダウンロードができます

ソースコード

diff #

def f(n,k):
	return 50*n+int(50*n/(0.8+0.2*k))

def PtoI(string):
	if string=="A":return 1
	elif string=="B":return 2
	elif string=="C":return 3
	elif string=="D":return 4
	elif string=="E":return 5
	elif string=="F":return 6
	elif string=="G":return 7
	elif string=="H":return 8
	elif string=="I":return 9
	elif string=="J":return 10
	elif string=="K":return 11
	elif string=="L":return 12
	elif string=="M":return 13
	elif string=="N":return 14
	elif string=="O":return 15
	elif string=="P":return 16
	elif string=="Q":return 17
	elif string=="R":return 18
	elif string=="S":return 19
	elif string=="T":return 20
	elif string=="U":return 21
	elif string=="V":return 22
	elif string=="W":return 23
	elif string=="X":return 24
	elif string=="Y":return 25
	elif string=="Z":return 26
	


n = int(input())
L=[0]+[int(i) for i in input().split()]
t=int(input())
A={}#名前:点数
AC=[1 for i in range(n+1)]
for i in range(t):
	name,p = map(str,input().split())
	#名前が始めて出てきた場合
	if name not in A:
		A[name]=[0 for _ in range(n+1)]#問題数+1だけ確保
	#何番目のACか確認して更新
	k=AC[PtoI(p)]
	#print(name,"による問題",p,"(",PtoI(p),")の",k,"番目のAC")
	AC[PtoI(p)]=k+1
	#print("AC:",AC)
	A[name][PtoI(p)]=f(L[PtoI(p)],k)
#print(A)
SUM=[]
for v,k in zip(A.values(),A.keys()):
	v[0]=sum(v)
	#print("v:",v)
	#print("k:",k)
	SUM.append([v,k])
#print(SUM)
#SUM.sort(key=lambda x:x[0][0])#合計が大きい順に並べ替え
SUM.sort(reverse=True)
#print(SUM)




#print(SUM)
for i in range(len(SUM)):
	print(i+1,SUM[i][1],end=" ")
	for j in range(1,len(SUM[i][0])):
		print(SUM[i][0][j],end=" ")
	print(SUM[i][0][0])

0