T = int(input())
for tc in range(1, T+1):
board = [[0]*10 for _ in range(10)]
sum = 0
N = int(input())
for i in range(N):
x1, y1, x2, y2, col = map(int, input().split())
for r in range(x1, x2+1):
for c in range(y1, y2+1):
board[r][c] += col
for r in range(10):
for c in range(10):
if board[r][c] == 3:
sum += 1
print('#{} {}'.format(tc, sum))
입력된 값들 중 색깔 값을 이용해 영역을 칠하는 것
두 영역이 겹쳐지는 부분의 처리 및 세 주는 것
for r in range(x1, x2+1):
for c in range(y1, y2+1):
board[r][c] += col
for r in range(10):
for c in range(10):
if board[r][c] == 3:
sum += 1
그래서 이 부분의 코드가 무척 중요한 포인트가 됨.
범위는 x1부터 x2까지 탐색해야 하므로 x2+1
첫 번째 for문에서 먼저 색을 칠한 후 두 번째 for문에서 겹쳐지는 영역을 표시한다.