반응형
1339번: 단어 수학
첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대
www.acmicpc.net
def make_score(N, word):
score = {}
for i in range(N):
for j, e in enumerate(word[i]):
s = 10**(len(word[i])-j-1)
if not e in score:
score[e] = s
else:
score[e] += s
return score
def cal_max(score):
sorted_score = sorted(list(score.values()), reverse=True)
result = 0
for i , e in enumerate(sorted_score):
result += (9-i)*e
return result
if __name__ == '__main__':
N = int(input())
word = [list(map(str,input())) for _ in range(N)]
score = make_score(N, word)
print(cal_max(score))
반응형