東大理三生のプログラミング奮闘記

初心者プログラマーが半年間でどれだけ成長するか!についてのブログです。勉強方法とか使った本とかについて書いていくと思います!プログラミングをもっと身近に感じてもらえたら嬉しいです!毎日更新を目指します!

ARC #03 を python で解いてみた!

ARC #03 を解いて見ました。

今回はC問題も難しくて解けなかったので A, B 問題のみになります。

「もっといい書き方があるよ」とかがあればコメントにて教えていただけると嬉しいです!!

問題 A:GPAを求める

N = int(input())
grade = input()
gpa_convert_dict = {"A": 4, "B": 3, "C": 2, "D": 1, "F": 0}
grade_gpa = []
for i in range(N):
    grade_gpa.append(gpa_convert_dict[grade[i]])

average = sum(grade_gpa) / N

print(average)

問題 B:逆文字辞書を作る

N = int(input())

word_list = []

for i in range(N):
    word = input()
    word_list.append(word)

word_list_rev = [word[::-1] for word in word_list]
word_dict = {word_list_rev[i]: word_list[i] for i in range(N)}
word_list_rev.sort()

for key in word_list_rev:
    print(word_dict[key])