๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๊ฐœ๋ฐœ/๐™‚๐™ค๐™ค๐™ง๐™ข ๐™‡๐™€๐™‘๐™€๐™‡

๊ตฌ๋ฆ„๋ ˆ๋ฒจ '์žฅ๋งˆ' ํŒŒ์ด์ฌ ํ’€์ด

by beomcoder 2023. 7. 13.
728x90
๋ฐ˜์‘ํ˜•
https://level.goorm.io/exam/194982/%EC%9E%A5%EB%A7%88/quiz/1
 

๊ตฌ๋ฆ„LEVEL

๊ตฌ๋ฆ„LEVEL ๋ฌธ์ œ๋ฅผ ํ’€์ดํ•˜๊ณ  ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์„ ๋ณด์™„ํ•˜๋ฉฐ ์‹ค๋ ฅ์„ ํ‚ค์›Œ๋ณด์„ธ์š”. ๊ตฌ๋ฆ„LEVEL์€ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ ๊ฐ€์žฅ ๋†’์€ ๋น„์ค‘์„ ์ฐจ์ง€ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ์ œ์ž‘ํ•˜๊ณ  ํ’€์ดํ•  ์ˆ˜ ์žˆ๋Š” ์˜จ๋ผ์ธ ์ €์ง€ ์„œ๋น„์Šค์ž…

level.goorm.io

 

_, days = map(int, input().split())
heights = list(map(int, input().split()))
system = []

for day in range(1, days + 1):
	start, end = map(int, input().split())
	
	for i in range(start-1, end):
		heights[i] += 1
		system.append(i)
		
	if day%3 == 0:
		for i in set(system):
			heights[i] -= 1
		system = []
		
print(*heights)

"""
์žฅ๋งˆ๋Š” 3์ผ์— ํ•œ๋ฒˆ์”ฉ ๋น„๊ฐ€ ์˜จ ๊ณณ๋“ค์— ๋Œ€ํ•ด์„œ ๋•…๋†’์ด๋ฅผ ํ•œ์นธ์”ฉ ์ค„์—ฌ์ฃผ์–ด์•ผํ•œ๋‹ค.

๋จผ์ € ์žฅ๋งˆ๋‚ ๋งŒํผ for๋ฌธ์„ ๋Œ๋ ค์ค€๋‹ค.
๋น„๊ฐ€์˜จ ์ง‘ ๋ฒ”์œ„๋ฅผ start, end๋กœ ๋ฐ›๊ณ ๋‚˜์„œ ๊ฑฐ๊ธฐ์˜ ๋†’์ด๋ฅผ ํ•œ์นธ์”ฉ ์˜ฌ๋ ค์ค€๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋น„๊ฐ€์˜จ๊ณณ์„ system์— ์ถ”๊ฐ€์‹œํ‚จ๋‹ค.
๋‚ ์งœ๊ฐ€ 3์˜ ๋ฐฐ์ˆ˜๋ผ๋ฉด system์— ๋„ฃ์—ˆ๋˜ 3์ผ๋™์•ˆ ๋น„๊ฐ€์˜จ๊ณณ์— ๋Œ€ํ•ด์„œ
ํ•œ๋ฒˆ๋งŒ ๋†’์ด๋ฅผ ํ•œ์นธ์”ฉ ๋‚ฎ์ถฐ์ฃผ์–ด์•ผํ•œ๋‹ค. ๊ทธ๋ž˜์„œ set๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค.

"""
728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€