์๋ง ์ฝํ ๋ฅผ ์ฒ์ ์ค๋นํ๋ ๋ ํ์ดํ๋ ๊ฒ์ธ๋ฐ
์ ๋ง ์ด๋ป๊ฒ ํ๊ณ ์ถ์๋๊ฑด์ง ๊ฐ์ด ์ ์กํ๋ค..ใ ใ ใ ใ ใ
์ฒ์ ์๋ํ ๋ฐฉ์์ ํ์ด๋ ๋ค์ ๊ฐ๋ค.
[์คํจํ ์ฝ๋]
paper = int(input())
papers = [[0]*paper for i in range(paper)]
result = 0
x = 0
y = 0
for i in range(paper):
papers[i] = list(map(int, input().split()))
for i in range(paper):
for j in range(i+1, paper):
if papers[i][0] < papers[j][0] < papers[i][0] + 10:
x = papers[i][0] + 10 - papers[j][0]
if papers[i][1] < papers[j][1] < papers[i][1] + 10:
y = (papers[i][1] + 10) - papers[j][1]
result += x * y
elif papers[j][1] < papers[i][1] < papers[j][1] + 10:
y = (papers[j][1] + 10) - papers[i][1]
result += x * y
if papers[j][0] < papers[i][0] < papers[j][0] + 10:
x = papers[j][0] + 10 - papers[i][0]
if papers[i][1] < papers[j][1] < papers[i][1] + 10:
y = (papers[i][1] + 10) - papers[j][1]
result += x * y
elif papers[j][1] < papers[i][1] < papers[j][1] + 10:
y = (papers[j][1] + 10) - papers[i][1]
result += x * y
print(paper*100 - result)
์ฒ์ ์ด ๋ฌธ์ ๋ฅผ ํ๊ณ "์ ์ด๋ ๊ฒ ์ด๋ ค์ ์์"์ด๋ฌ์๋๋ฐ
์ฌ๋ฌ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด๋ฉด์ ์ฐ์ตํ ์ง๊ธ ๋ค์ ํ์ด๋ณด๋
"์ฅ? ์ด๋ ๊ฒ ์ฌ์ด๊ฑธ ์ด๋ ค์ํ๋ค๊ณ ?" ํ๋ ์๊ฐ์ด ๋ค์๋ค.
์ญ์ ๋๋ ์ฑ์ฅํ๊ณ ์์๋ ๊ฒ์ด๋ค..! ๋๋ฅ
์ ํฌํจ ์ฌ๋ฌ๋ถ๋ ์ถฉ๋ถํ ํ ์ ์์ต๋๋ค!! ์์์์
์ด์ ์ก๋ด์ ๊ทธ๋งํ๊ณ ๋ณธ๊ฒฉ์ ์ผ๋ก ๋ฌธ์ ์ ๋ํด ์ด์ผ๊ธฐ ํด๋ณด๋๋กํ์.
[ํด๊ฒฐ ํฌ์ธํธ]
1. 100x100ํฌ๊ธฐ์ ํ์ ์ด๋ป๊ฒ ํํ ํ ๊ฒ์ธ๊ฐ
=> 100*100์ ๋ฆฌ์คํธ
=> 1์ฌ๋ถ๋ฉด์ 4์ฌ๋ถ๋ฉด ๋ฐฉํฅ์ผ๋ก ๋ค์ง์ ํํ
2. ์์ข ์ด๊ฐ ํ ์์ ์ฌ๊ฐ๊ฐ ๊ฒ ํํ
=> ๋ฆฌ์คํธ์์ ํด๋น ์์น์ ๊ฐ์ 1๋ก ์ค์
=> ๊ฒน์น๋๋ผ๋ ๋ฌธ์ ์๊ฒ ๋๋ค.
count = int(input())
papers = [[0]*100 for _ in range(100)] #100x100 ํ ์ค์
result = 0
for i in range(count): #์์ข
์ด ๊ฐ์๋งํผ ๋ฐ๋ณต
x, y = map(int, input().split()) #์์ข
์ด์ ์์ ์์น ์ธ๋ฑ์ค x, y
for j in range(10):
for k in range(10):
papers[paper[0] + j][paper[1] + k] = 1 #100x100 ํ ์์ ์์ข
์ด ํฌ๊ธฐ(10x10)๋งํผ 1๋ก ์ฑ์ฐ๊ธฐ
for p in paper:
result += p.count(1) #paper์ ํ ํ(ํฌ๊ธฐ๊ฐ 100)์์ 1์ ๊ฐ์ ์ธ๊ธฐ
print(result)