ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 백준1339) 단어 수학
    PS 2022. 6. 3. 10:58
    반응형

    Python3
    뭔가 브루트 포스로 풀어야 할 것 같은 문제였는데 띵 하고 아이디어가 떠오름

    문자에 10**(자릿수) 를 하여 저장해놓고 내림차순 정렬 후 9부터 넣어주면 된다.

    dic = dict(sorted(dic.items(),key=lambda item:item[1],reverse=True))

    이놈으로 dict를 정렬해서 쉽게 풀 수 있었당

    n = int(input())
    arr = []
    
    dic = {}
    
    for i in range(n):
        s = input()
        l = len(s)
        for j in range(l):
            if s[j] in dic.keys():
                dic[s[j]] += 10**(l-j-1)
            else:
                dic[s[j]] = 10**(l-j-1)
                
                
    dic = dict(sorted(dic.items(),key=lambda item:item[1],reverse=True))
    
    cnt = 9
    ans_dic = {}
    ans = 0
    for key in dic.keys():
        ans+=dic[key]*cnt
        cnt-=1
        
    print(ans)
            
    
    반응형

    댓글

Designed by Tistory.