문제1406--[기초-리스트] 바둑판에 흰 돌 놓기(설명)(py)

1406: [기초-리스트] 바둑판에 흰 돌 놓기(설명)(py)

[만든사람 : 전현석, 최문성(확인), 이준용(확인), 김지혜(그림) (2020)]
시간제한 : 1.000 sec  메모리제한 : 128 MiB

문제 설명

본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. 
------

기숙사 생활을 하는 학교를 다니는 영일이는 어떤 금요일에 집으로 귀가를 했다.

오랜만에 집에 간 영일이는 친구와 함께 하던 매우 큰 판의 오목에 대해서 생각해보다가
"바둑 프로그램을 만들어 볼까?"라는 생각을 하게 되었다.

19 * 19 크기의 바둑판에 n개의 흰 돌을 놓았을 때, 바둑판의 상태를 출력해 보자.
예시
...
d=[]                        #아무것도 들어있지 않은 빈 리스트 [ ] 만들기
for i in range(20) :
  d.append([])         #리스트의 마지막에 다른 빈 리스트 [ ] 추가해 넣기. [ ... , [ ] ] 처럼 들어간다.
  for j in range(20) : 
    d[i].append(0)    #리스트 안에 들어있는 i번째 리스트 안에 0 추가해 넣기. [ ... , [ ... , 0] ] 처럼 들어간다. 

n = int(input())
for i in range(n) :
  x, y = input().split()
  d[int(x)][int(y)] = 1

for i in range(1, 20) :
  for j in range(1, 20) : 
    print(d[i][j], end=' ')    #스페이스로 분리해서 한 줄로 출력
  print()                          #줄 바꿈
...


참고
리스트 안에 다른 리스트를 넣어 만들면?
가로 번호와 세로 번호를 사용해서 2차원 형태처럼, 데이터를 저장해 사용할 수 있다.
이름[번호][번호] 형식으로, 리스트 안에 저장되어있는 값을 읽거나 쓸 수 있다.
비슷한 방법으로 n차원으로 확장시킨 리스트도 만들 수 있다.

#20 * 20 크기에 모두 0이 채워진 2차원 형태의 리스트를 만드는 코드1
...
d=[]
for i in range(20) : 
  d.append([])
  for j in range(20) :  
    d[i].append(0)
...
아래와 같은 방법으로도 똑같은 구조를 만들 수 있다.

#20 * 20 크기에 모두 0이 채워진 2차원 형태의 리스트를 만드는 코드2
#이러한 리스트 생성 방식을 List Comprehensions 라고 한다.
...
d = [[0 for j in range(20)] for i in range(20)]
...
#[0 for j in range(20)] : 0이 20개 들어있는 리스트 [0, 0, 0, ... , 0, 0, 0]

입력 설명

첫 번째 줄에 흰 돌의 개수(n)가 입력된다.
두 번째 줄부터 n줄에 걸쳐서, 흰 돌을 놓는 좌표(x, y)가 스페이스로 분리되어 한 줄씩 입력된다.
(0<=n<=10, 1<=x,y<=19,  똑같은 좌표(x,y)는 다시 입력되지 않는다.)

출력 설명

바둑판의 상태를 출력한다.
(흰 돌이 있는 위치는 1, 없는 곳은 0으로 출력한다.)

입력 예시 Copy

5
1 1
2 2
3 3
4 4
5 5

출력 예시 Copy

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

도움

기초100제(py) v0.85 : 정보교사 커뮤니티 @컴퓨터과학사랑(CSL)
- 중고등학교 정보 선생님들과 함께 정보수업/방과후/동아리활동 등을 통해 재미있게 배워보세요.
- 모든 내용 및 이미지들은 저작자와의 협의 없이 무단으로 사용할 수 없습니다.

출처/분류