[Python] 백준 1449번 : 수리공 항승

hjeu·2025년 1월 11일

백준

목록 보기
15/48

💡문제

백준 1449번 문제 링크

🍀풀이

나는 바보임을 한번 더 느꼈던 순간...
예제1만 보고 연속되는 개수 == 테이프의 길이라고 생각을 해서 문제를 풀었는데 예제2를 실행하면서 아 이게 아니구나...라고 생각하게 되었다.

다시 문제를 보고 생각을 해봤는데 그냥 테이프를 붙일 수 있는 범위 내에 물이 새는 곳이 있으면 쭉 붙이고, 아니면 새 테이프를 붙이면 되지 않을까?

코드

n, l = map(int, input().split())
pos = list(map(int, input().split()))
pos.sort()

# 테이프를 처음 붙이는 시작점
start = pos[0]
count = 1

for p in pos:
	# 테이프를 붙이는 범위 내에 물이 새는 곳이 있다면 계속 붙이고
    if p in range(start, start+l):
        continue
    # 없다면 테이프 시작점을 바꾸고 개수 +1
    else:
        start = p
        count += 1

print(count)

뭔가 풀고나면 간단한데 풀기전에는 뭐이리 어렵게 생각하는지...


profile
나는야 개발왕이 될거야! (๑ •̀ω•́)۶

0개의 댓글