😊 白駿1339:単語数学
1339:単語数学
これは
今回はちょっと難易度があります問題を解いてみると、
📌 Try 1
ブログの文章の方向性を参考にして、コードはすべて私が書いたのです.
🎯 別の分のコード
🎁 Reference[白準アルゴリズム]1339号:単語数学-Python
https://suri78.tistory.com/183
これは
Greedy
題です.今回はちょっと難易度があります問題を解いてみると、
Gold 4
題です.📌 Try 1
N = int(input())
words = dict()
for _ in range(N):
word = list(input())
digit = 1
for w in reversed(word):
words[w] = digit if w not in words else words[w] + digit
digit *= 10
num, _sum = 9, 0
for w in sorted(words.items(), reverse=True, key=lambda x:x[1]):
_sum += num * w[1]
num -= 1
print(_sum)
どうやって解決するか悩んで、いろいろな方法を考え出したが、一つも決められなかった.ブログの文章の方向性を参考にして、コードはすべて私が書いたのです.
dict
で解き、dict
に並べ替えました.dict
はunordered
の資料構造なので解けましたが、、、楽ではありません.🎯 別の分のコード
n = int(input())
word = [list(map(lambda x: ord(x)-65, input().rstrip())) for _ in range(n)]
alpha = [0] * 26
for i in range(n):
j = 0
for w in word[i][::-1]:
alpha[w] += (10 ** j)
j += 1
alpha.sort(reverse=True)
ans, t = 0, 9
for i in range(26):
if alpha[i] == 0:
break
ans += (t * alpha[i])
t -= 1
print(ans)
double-list
で解けました.🎁 Reference
https://suri78.tistory.com/183
Reference
この問題について(😊 白駿1339:単語数学), 我々は、より多くの情報をここで見つけました https://velog.io/@_3juhwan/백준-1339-단어-수학テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol