[파이썬]백준 10163 색종이

Byeonghyeon Kim·2021년 2월 25일
0

알고리즘문제

목록 보기
18/93
post-thumbnail

링크

백준 10163 색종이


인덱스가 좌상단부터 0이 아닌 좌하단부터 0으로 시작하므로 이부분만 주의해준다면 문제자체는 어렵진 않다.
입력을 받을때마다 컬러값을 하나씩 증가시켜서 새로운 컬러값으로 재할당시키는 방법으로 겹치는 부분을 처리했다.


정답 코드

N = int(input())
box = [[0] * 101 for _ in range(101)]

color = 1
for i in range(N):
    c, r, w, h = map(int, input().split())
    r = 100 - r
    for j in range(h):
        for k in range(w):
            box[r - j][c + k] = color # 입력은 0이지만 인덱스상에서 100부터 올라가므로 r - j가 맞음
    color += 1

ans = [0] * N
for i in range(101):
    for j in range(101):
        for k in range(1, N + 1):
            if box[i][j] == k:
                ans[k - 1] += 1

print('\n'.join(map(str, ans)))

알게된 것👨‍💻

  • 인덱스를 다룰땐 범위를 벗어나지 않게 항상 조심 또 조심
profile
자기 주도 개발전 (개발, 발전)

0개의 댓글