ABC202 - Atcoder/Python精進のための解説メモ

カレンダーアイコン
2021/09/21

ABC202 - A.Three Dice

AtCoder公式 | ABC202 - A.Three Dice

解答

a, b, c = map(int, input().split())
print(7 * 3 - (a + b + c))

要点解説メモ

  • シンプルにやる

ABC202 - B.180°

AtCoder公式 | ABC202 - B.180°

解答

s = input()
s = s.replace('6', 'x').replace('9', '6').replace('x', '9')
print(s[::-1])

要点解説メモ

  • 6と9を入れ替えて、逆順に出力したい
  • 一旦べつのものに置き換えて、入れかえる

ABC202 - C.Made Up

AtCoder公式 | ABC202 - C.Made Up

解答

from collections import Counter
n = int(input())
aaa = list(map(int, input().split()))
bbb = list(map(int, input().split()))
ccc = list(map(int, input().split()))

ddd = [bbb[c - 1] for c in ccc]
cnt_a = Counter(aaa)
cnt_d = Counter(ddd)

ans = sum([cnt_a[i] * cnt_d[i] for i in range(1, n + 1)])
print(ans)

要点解説メモ

  • 1からnまでの数に関して、AとBc配列の要素に何個ずつあるかわかれば良い
  • 例えば、Aに1が3つ、Bcに1が2つある場合、組み合わせの数は3×2=6通り。これらを1からnまで合算すれば答え。
  • 先にBc配列を作って要素数を数えておけば、計算量が間に合う

ABC202 - D.

AtCoder公式 | ABC202 - D.

解答

まだ解いていません

要点解説メモ