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

カレンダーアイコン
2021/06/14

ABC151 - A.Next Alphabet

AtCoder公式 | ABC151 - A.Next Alphabet

解答

print(chr(ord(input()) + 1))

要点解説メモ

  • chr, ordを使えるようにしておく

ABC151 - B.Achieve the Goal

AtCoder公式 | ABC151 - B.Achieve the Goal

解答

n, k, m = map(int, input().split())
aaa = list(map(int, input().split()))
num = m * n - sum(aaa)
if num <= 0:
    print(0)
elif num <= k:
    print(num)
else:
    print(-1)

要点解説メモ

  • 分岐に注意

ABC151 - C.Welcome to AtCoder

AtCoder公式 | ABC151 - C.Welcome to AtCoder

解答

n, m = map(int, input().split())
psps = [list(map(str, input().split())) for _ in range(m)]
is_ac = [False] * (n + 1)
wa_cnt = [0] * (n + 1)
for p, s in psps:
    p = int(p)
    if is_ac[p]:
        continue
    if s == 'WA':
        wa_cnt[p] += 1
    else:
        is_ac[p] = True
ac_cnt = sum(is_ac)
pena_cnt = sum(wa_cnt for wa_cnt, is_ac in zip(wa_cnt, is_ac) if is_ac)
print(ac_cnt, pena_cnt)

要点解説メモ

  • ACしたかどうかによってWAの扱いが変わるので、それぞれの状態と数を管理しておく

ABC151 - D.

AtCoder公式 | ABC151 - D.

解答

まだ解いていません

要点解説メモ