웹찢남

[백준 1339 단어 수학 문제] PYTHON 본문

백준 Algorithm

[백준 1339 단어 수학 문제] PYTHON

harry595 2021. 4. 17. 01:54

 

이번 문제를 풀면서 시간 부족이 뜰것 같아 걱정이 들었다.

하지만 다행히도 한번에 풀었다!

내가 푼 방식은 우선 단어들을 다 받는다.

받은 단어들이 몇번째 자리에 있나 확인하고 dictionary에 집어넣는다.

ex) GCF => {'G':100,'C':10,'F':1}

그 후 value를 기준으로 정렬을 하고

앞에 있는 단어를 9 그 다음을 8 이런 식으로 value 값만을 확인해 풀었다.

 

from sys import stdin

t=int(input())
dic={}
for _ in range(t):
    gd=[]
    gd.append(list(map(str, stdin.readline().split())))
    for i in range(len(gd)):
        for cnt,j in enumerate(gd[i][0]):
            if( j not in dic.keys()):
                dic[j]=10**(len(gd[i][0])-cnt-1)
            else:
                dic[j]+=10**(len(gd[i][0])-cnt-1)

dic = sorted(dic.items(), key=(lambda x: x[1]), reverse = True)
result=0
for i in range(len(dic)):
    result+=dic[i][1]*(9-i)
print(result)
Comments