1097 : [기초-2차원배열] 바둑알 십자 뒤집기(설명)
처음 바둑판 상태를 입력받고, 뒤집기할 횟수를 입력받고, 좌표를 입력받는다. 반복문으로 반복하며 좌표의 가로줄과 세로줄의 흑, 백을 변환한다. 처음 바둑판 상태는 판 리스트를 하나 만들어 두고, 입력값 각 줄을 리스트로 만들어 기존에 만들어둔 리스트에 넣어 2차원 리스트로 만들었다. 십자 뒤집기는 입력받은 좌표의 세로줄과 가로줄 각각 반복문으로 19번 반복하며 흑과 백을 변환하였다.
pan = []
# 바둑판 초기 상태 입력
for i in range(19):
a = list(map(int, input().split()))
pan.append(a)
n = int(input())
for i in range(n):
# 십자 뒤집기 할 좌표
x, y = map(int, input().split())
# 리스트 인덱스는 0번부터 시작하므로 1씩 빼줌
x -= 1
y -= 1
# 가로 줄 흑, 백 변환
for j in range(19):
if pan[x][j] == 0:
pan[x][j] = 1
else:
pan[x][j] = 0
# 세로줄 흑, 백 변환
for j in range(19):
if pan[j][y] == 0:
pan[j][y] = 1
else:
pan[j][y] = 0
# 최종 값 출력
for i in range(19):
for j in range(19):
print(pan[i][j], end = ' ')
print()
1098 : [기초-2차원배열] 설탕 과자 뽑기
입력받은 가로, 세로 크기 만큼 0을 채운 격자판을 2차원 리스트로 만들고, 길이, 방향, 좌표를 입력받아 입력받은 좌표부터 가로 또는 세로 방향으로 입력받은 길이까지 1로 채우는 행위를 입력받은 좌표 수만큼 반복하고, 막대가 채워진 최종 격자판을 출력한다.
h, w = map(int, input().split())
pan = []
# 격자판 초기상태(모든 칸 0)
for i in range(h):
pan.append([0] * w)
n = int(input())
for i in range(n):
l, d, x, y = map(int, input().split())
x -= 1
y -= 1
# 막대가 가로로 놓여있을 때
if d == 0:
# 시작 좌표부터 가로 길이만큼 1로 채워짐
for j in range(l):
pan[x][y+j] = 1
# 세로로 놓여있을 때
else:
# 시작 좌표부터 세로 길이만큼 1로 채워짐
for j in range(l):
pan[x+j][y] = 1
# 격자판 채운 모양 출력
for i in range(h):
for j in range(w):
print(pan[i][j], end = ' ')
print()
1099 : [기초-2차원배열] 설탕 과자 뽑기
리스트의 인덱스는 0부터 시작하기 때문에 시작 인덱스를 1,1 로 지정하였고, 입력값은 한 줄씩 리스트로 만들어 입력받아 2차원 리스트로ㅓ 만들었다. 무한 루프 반복문을 만들어 개미가 먹이를 만나거나, 오른쪽 또는 아래로 이동할 수 없을 때 반복문을 탈출하도록 하였고, 벽이 없으면 오른쪽으로 벽이 있으면 아래로 이동하면서 현재 위치에 9를 저장하였다.
miro = []
x, y = 1, 1
for i in range(10):
a = list(map(int, input().split()))
miro.append(a)
while True:
if miro[x][y] == 2:
miro[x][y] = 9
break
miro[x][y] = 9
if miro[x][y+1] == 0:
y += 1
elif miro[x][y+1] == 1:
if miro[x+1][y] == 1:
break
elif miro[x+1][y] == 2:
miro[x+1][y] = 9
break
else:
x += 1
else:
miro[x][y+1] = 9
break
for i in range(10):
for j in range(10):
print(miro[i][j], end = ' ')
print()
'Project H4C Study Group' 카테고리의 다른 글
[Project H4C] opentutorials HTML(2) (0) | 2021.02.06 |
---|---|
[Project H4C] opentutorials HTML(1) (0) | 2021.02.04 |
[Project H4C] 코드업 기초 100제(3) (0) | 2021.02.04 |
[Project H4C] 코드업 기초100제(2) (0) | 2021.02.03 |
[Project H4C] 코드업 기초 100제 (1) (0) | 2021.02.02 |