๐Ÿงฉ Problem Solving/[๋ฐฑ์ค€]

[๋ฐฑ์ค€] 2563 ์ƒ‰์ข…์ด (python ํŒŒ์ด์ฌ)

์ œ๋ด‰์•„ 2024. 4. 1. 20:05
 

2563๋ฒˆ: ์ƒ‰์ข…์ด

์ฒซ์งธ ์ค„์— ์ƒ‰์ข…์ด์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด์–ด ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ƒ‰์ข…์ด๋ฅผ ๋ถ™์ธ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ƒ‰์ข…์ด๋ฅผ ๋ถ™์ธ ์œ„์น˜๋Š” ๋‘ ๊ฐœ์˜ ์ž์—ฐ์ˆ˜๋กœ ์ฃผ์–ด์ง€๋Š”๋ฐ ์ฒซ ๋ฒˆ์งธ ์ž์—ฐ์ˆ˜๋Š” ์ƒ‰์ข…์ด์˜ ์™ผ์ชฝ ๋ณ€

www.acmicpc.net


2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ ํ™œ์šฉํ•œ ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ.


์•„์ด๋””์–ด

์–ธ๋œป ๋ณด๊ธฐ์— ๊ท€์ฐฎ์€ ๋ฌธ์ œ๋ผ๊ณ  ๋Š๊ปด์งˆ ์ˆ˜ ์žˆ๋‹ค. ๊ทผ๋ฐ ๋ฌธ์ œ์—์„œ ์ œ๊ณต๋œ ๋ฒ”์œ„๊ฐ€ 100 100์ด๋ผ๋Š” ๋งค์šฐ ์ž‘์€ ๋ฒ”์œ„์ด๋‹ค.

 

์ด๋Ÿฐ ๊ฒฝ์šฐ๋Š” ๋ชจ๋“  ์ขŒํ‘œ๋ฅผ 2์ฐจ์œˆ ๋ฆฌ์ŠคํŠธ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

๋จผ์ € 100 * 100 ์˜ ์ด์ฐจ์› ๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ’์„ ์ „๋ถ€ False๋กœ ์„ ์–ธํ•ด ์ค€๋‹ค. 

๊ทธ๋ฆฌ๊ณ  ๊ฐ ์ƒ‰์ข…์ด๊ฐ€ ์žˆ๋Š” ์˜์—ญ์˜ ์ขŒํ‘œ๋“ค์„ True๋กœ ๋ฐ”๊ฟ”์ฃผ๊ณ 

๋งˆ์ง€๋ง‰์œผ๋กœ True์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ์–ด์„œ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค.


์ „์ฒด ์ฝ”๋“œ

N = int(input())

paperList = []
bigPaper = [[False] * 101 for _ in range(101)]
answer = 0
for _ in range(N):
    x, y = map(int, input().split())
    for i in range(x, x + 10):
        for j in range(y, y + 10):
            bigPaper[i][j] = True

for i in range(1, 101):
    for j in range(1, 101):
        if bigPaper[i][j] == True:
            answer += 1

print(answer)