영일이는 아버지와 함께 두던 매우 큰 오목에 대해서 생각해 보다가 "바둑판에 돌을 올린 것을 프로그래밍 할 수 있을까?"하고 생각하였다.
바둑판(19 * 19)에 n개의 흰 돌을 놓는다고 할 때, n개의 흰 돌이 놓인 위치를 출력하는 프로그램을 작성해보자.
입력
바둑판에 올려 놓을 흰 돌의 개수(n)가 첫 줄에 입력된다.
둘째 줄 부터 n+1 번째 줄까지 흰 돌을 놓을 좌표(x, y)가 n줄 입력된다.
n은 10이하의 자연수이고 x, y 좌표는 1 ~ 19 까지이며, 같은 좌표는 입력되지 않는다.
5
1 1
2 2
3 3
4 4
5 5
출력
흰 돌이 올려진 바둑판의 상황을 출력한다.
흰 돌이 있는 위치는 1, 없는 곳은 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 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
<풀이>
더보기
내가 쓴 풀이
import numpy as np
n = int(input())
coords = np.zeros((19,19), dtype = int)
print(coords[0][0], coords[1][0])
for i in range(n):
x, y = tuple(map(int,input().split()))
white = (coords[0+x], coords[1+y])
coords[white[0][white[1]] = 1
for crd in coords:
print(*crd)
멘붕,,
File "main.py", line 9
coords[white[0][white[1]] = 1
^
SyntaxError: invalid syntax
에러도 나는데 그 이유를 모르겠다
완전 엉망진창 코드;;;
강의 풀이
n = int(input())
shape = [[0 for _ in range(19)] for _ in range(19)]
for _ in range(n) :
x, y = map(lambda num : int(num)-1, input().split())
shape[x][y] = 1
for s in shape :
print( *s )
numpy 사용
import numpy as np
n = int(input())
baduk = np.zeros((19,19), dtype=int)
for _ in range(n):
x, y = map(int, input().split())
baduk[x-1][y-1] = 1
for bd in baduk:
print(*bd)
<풀이 비교>
...................
이렇게 간단하게 코드 짤 수 있는 거였구나..............
잠시 현타...................😱
map이랑 lambda 함수를 같이 쓰는 건 처음인 것 같다.
lambda 함수 쓴지 오래돼서 잊었었는데 이렇게 또 쓰는구만....
'Python > CodeUp' 카테고리의 다른 글
코드업 기초 100제 98번 - 설탕과자 뽑기 (0) | 2021.11.28 |
---|---|
코드업 기초 100제 97번 - 바둑판에 십자 뒤집기 (0) | 2021.11.28 |
코드업 기초 100제 우리밋의 보너스 문제 - 내 미래 (0) | 2021.11.28 |
코드업 기초 100제 95번 - 이상한 출석 번호 부르기3 (0) | 2021.11.26 |
코드업 기초 100제 94번 - 이상한 출석 번호 부르기2 (0) | 2021.11.26 |