728x90
6096 - 바둑알 십자 뒤집기
board = []
for i in range(19):
board.append(list(map(int, input().split()))) # 리스트 삽입
n = int(input()) # 좌표 개수
for i in range(n):
x, y = map(int, input().split()) # 십자 뒤집기할 좌표
# 반전(뒤집기)
for i in range(19):
for j in range(19):
if(board[x - 1][j] == 0):
board[x - 1][j] = 1
elif(board[x - 1][j] == 1):
board[x - 1][j] = 0
if(board[i][y - 1] == 0):
board[i][y - 1] = 1
elif(board[i][y - 1] == 1):
board[i][y - 1] = 0
# 보드 출력
for i in range(19):
for j in range(19):
print(board[i][j], end=" ")
print()
해당 좌표를 제외하는 조건문을 쓰지 않은 이유는?
가로줄, 세로줄에 대해서 각각 뒤집기를 총 2번 반복하면 바꾸지 않은 것과 똑같으므로 해당좌표를 제외하는 조건문은 굳이 쓸 필요가 없다
728x90
'[Python]알고리즘 > 코드업' 카테고리의 다른 글
[기초 - 리스트] ★ 6098 - 성실한 개미 (0) | 2022.03.19 |
---|---|
[기초-리스트] 6097 - 설탕과자 뽑기 (0) | 2022.03.18 |
[기초-리스트] ▲ 6095 - 바둑판에 흰 돌 놓기 (0) | 2022.03.17 |
[기초-리스트] 6094 - 이상한 출석 번호 부르기3 (0) | 2022.03.17 |
[기초-리스트] 6093 - 이상한 출석 번호 부르기2 (0) | 2022.03.17 |