알고리즘 문제풀이
swea 4836. 색칠하기 Python
아크몽
2024. 1. 31. 23:26
t = int(input())
for tc in range(1,t+1):
n = int(input())
arr = [list(map(int, input().split())) for _ in range(n)]
cnt = [[0] * 10 for _ in range(10)]
count = 0
for a in range(len(arr)):
r1 = arr[a][0]
c1 = arr[a][1]
r2 = arr[a][2]
c2 = arr[a][3]
color = arr[a][4]
for i in range(r1, r2+1):
for j in range(c1,c2+1):
if cnt[i][j] == 0:
cnt[i][j] = color
elif cnt[i][j] != color:
cnt[i][j] = 3
purple = 0
for x in range(10):
for y in range(10):
if cnt[x][y] == 3:
purple += 1
print(f'#{tc} {purple}')
실수 한 부분
1. cnt 리스트를 테스트케이스 용 for문 밖에 있었다.
cnt가 초기화 되지 않음 => 이미 그려진 도화지 위에다가 색을 계속 칠함
2. 색을 칠 할 때 단순히 cnt\[i\]\[j\] +=1
로 계속 더해 갔음
색 구분없이 cnt가 계속 추가되어짐