십진수 자리 수는, 그 자리 수가
n
이라고 할 때 이므로 들어오는 수를 통해 해당 수가 전체에서 얼마나 카운트되는지 파악할 수 있다. 딕셔너리를 통해 빠르게 저장하자.
import sys
n = int(sys.stdin.readline().rstrip())
digits = {}
for _ in range(n):
num = sys.stdin.readline().rstrip()
for digit_exp, digit in enumerate(num[::-1]):
digits_num = digits.get(digit, 0)
digits_num += 10**digit_exp
digits[digit] = digits_num
digits_cnt = list(digits.values())
digits_cnt.sort(reverse=True)
digits_assigned = 9
total = 0
for digit_cnt in digits_cnt:
total += digits_assigned * digit_cnt
digits_assigned -= 1
print(total)