
📋 문제 설명
바둑판(19 * 19)에 n개의 흰 돌을 놓는다고 할 때, n개의 흰 돌이 놓인 위치를 출력하는 프로그램을 작성해보자.
⌨️ 입력
바둑판에 올려놓을 흰 돌의 개수(n)가 첫 줄에 입력된다.
둘째 줄부터 n+1 번째 줄까지 흰 돌을 놓을 좌표(x, y)가 n줄 입력된다.
n은 10 이하의 자연수이고 x, y 좌표는 1 ~ 19 까지이며, 똑같은 좌표는 입력되지 않는다.
🖥️ 출력
흰 돌이 올려진 바둑판의 상황을 출력한다.
흰 돌이 있는 위치는 1, 없는 곳은 0으로 출력한다.
📸 입력 예시
5
1 1
2 2
3 3
4 4
5 5
🖼️ 출력 예시
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
✏️ 풀이과정
d = [[0 for j in range(20)] for i in range(20)] #바둑판 생성
n = int(input()) #바둑판에 올려놓을 흰 돌의 개수
for a in range(n):
xy = input().split() #[?, ?]처럼 리스트로 입력
for i in range(2):
xy[i] = int(xy[i]) #리스트 안의 값을 정수형으로 변환
d[xy[0]-1][xy[1]-1] = 1 #각 x, y좌표에 있는 0을 1로 변환
for i in range(19): #출력
for j in range(19):
print(d[i][j], end = " ")
print()
알고리즘 자체는 어렵지 않았지만 출력을 어떻게 해야 하나 고민을 많이 했었다.
" \n "로 줄 바꿈을 해도 출력 예시랑 출력된 모습이 아래 사진과 같이 좀 다르게 나왔다.
(파이썬은 C와 다르게 print()를 하고 나면 자동으로 줄 바꿈이 된다.)

결국 출력 때문에 다른 블로거들이 게시한 write-up을 보았다.
참고를 해보니, print()를 해서 줄을 그냥 다음 줄에 출력이 되도록 했다.
참고로, print()를 바깥 for문에 써주는 이유는 안쪽 for문에 쓰게 되면 하나의 문자가 출력될 때마다 줄 바꿈이 일어나기 때문에 하나의 작은 리스트가 출력이 다 된 후, 개행을 하도록 하였다.
알고리즘의 문제가 아니라, 출력 문제로 시간을 많이 쓴 것 같아 해결을 해도 속이 그렇게 시원하지는 않았던 것 같다. ㅋ
어쨌든 print()를 이렇게 쓸 수 있다는 것을 알게 되었으니 하나라도 더 배울 수 있었던 문제였다.
'Programming Language > PYTHON' 카테고리의 다른 글
[빡공팟 5기] 6097 : [기초-리스트] 설탕과자 뽑기(py) (0) | 2022.09.28 |
---|---|
[빡공팟 5기] | 코드업 | 6096 : [기초-리스트] 바둑알 십자 뒤집기(py) (1) | 2022.09.25 |
[빡공팟 5기] | 코드업 | 6088 : [기초-종합] 수 나열하기1(py) (1) | 2022.09.22 |
[자료구조] - Python으로 스택 간단 구현하기 (0) | 2022.08.27 |
파이썬 소켓 프로그래밍 (0) | 2022.07.27 |