[SW Academy] 15612. 체스판 위의 룩 배치[D3]

DreamJJW·2023년 9월 25일
0

SW Academy

목록 보기
23/26

문제

풀이

2차원 리스트의 각 행과 열에 룩(O)이 하나 이상 있으면 안되며, 체스판 위의 총 룩의 수는 8임을 검증하면 되는 문제이다.

다시 말해, 모든 행(8개)과 열(8개)에 놓여있는 룩은 무조건 1이어야만 룩들이 서로 공격하지 않는다.


t = int(input())
for test_case in range(t):
    board = []
    for i in range(8):
        board.append(list(map(str, input())))

    row = [0, 0, 0, 0, 0, 0, 0, 0]
    col = [0, 0, 0, 0, 0, 0, 0, 0]

    for i in range(8):
        for j in range(8):
            if board[i][j] == 'O':
                row[i] += 1
                col[j] += 1

    answer = 'yes'
    for x in row:
        if x != 1:
            answer = 'no'

    for y in col:
        if y != 1:
            answer = 'no'

    print(f"#{test_case+1} {answer}")

profile
간절한 사람

0개의 댓글