結果

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

ソースコード

diff #
プレゼンテーションモードにする

N = int(input())
L = list(map(int, input().split()))
T = int(input())
a = ''.join(chr(ord('A') + i) for i in range(N))
base_score = {}
acs = {}
for c in a:
base_score[c] = L[ord(c) - ord('A')]
acs[c] = 0
def score(c):
acs[c] += 1
return int(50 * base_score[c] + 50 * base_score[c] / (0.8 + 0.2 * acs[c]))
result = {}
for i in range(T):
Name, P = input().split()
if Name in result:
s, _, r = result[Name]
else:
s = 0
r = {}
j = score(P)
r[P] = j
s += j
result[Name] = [s, -i, r]
result = sorted(([result[k][0], result[k][1], k, result[k][2]] for k in result), reverse=True)
for i in range(len(result)):
r = result[i]
t = []
t.append(i + 1)
t.append(r[2])
for c in a:
if c in r[3]:
t.append(r[3][c])
else:
t.append(0)
t.append(r[0])
print(*t)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0