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

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

ABC157 - A.Duplex Printing

AtCoder公式 | ABC157 - A.Duplex Printing

解答

n = int(input())
print(int(n // 2) if n % 2 == 0 else int(n // 2 + 1))

要点解説メモ

  • シンプルにやる

ABC157 - B.Bingo

AtCoder公式 | ABC157 - B.Bingo

解答

aaa = [list(map(int, input().split())) for _ in range(3)]
n = int(input())
for _ in range(n):
    b = int(input())
    for j in range(3):
        for k in range(3):
            if aaa[j][k] == b:
                aaa[j][k] = 0

ans = 'No'
for i in range(3):
    if aaa[i][0] == aaa[i][1] == aaa[i][2] == 0:
        ans = 'Yes'
    if aaa[0][i] == aaa[1][i] == aaa[2][i] == 0:
        ans = 'Yes'
if aaa[0][0] == aaa[1][1] == aaa[2][2] == 0:
    ans = 'Yes'
if aaa[2][0] == aaa[1][1] == aaa[0][2] == 0:
    ans = 'Yes'
print(ans)

要点解説メモ

  • 印を0として縦・横・斜めがすべて0のものがあるかを探索

ABC157 - C.Guess The Number

AtCoder公式 | ABC157 - C.Guess The Number

解答

n, m = map(int, input().split())
sscc = [list(map(int, input().split())) for _ in range(m)]
ans = -1
for i in range(10 ** n):
    str_i = str(i)
    if len(str_i) != n:
        continue
    if all(str_i[s - 1] == str(c) for s, c in sscc):
        ans = i
        break
print(ans)

要点解説メモ

  • nが最大で3なので、999まで全探索すればよい

ABC157 - D.

AtCoder公式 | ABC157 - D.

解答

まだ解いていません

要点解説メモ