Koala - 15기/코딩테스트 준비 스터디

[백준/Python3] 14465번 : 소가 길을 건너간 이유 5

יוֹסֵף 2024. 7. 21. 23:58

https://www.acmicpc.net/problem/14465

 

풀이

import sys
def light(array):
    left, right = 0, 1
    broken = [0] * N
   
    for i in array:
        broken[i - 1] = 1

    current_broken = sum(broken[:K])
    Min = current_broken
    
    for i in range(K, N):
        current_broken += broken[i] - broken[i - K]
        if current_broken < Min:
            Min = current_broken
    
    return Min
        


N, K, B = map(int, sys.stdin.readline().split())
array =list()
for _ in range(B):
    array.append(int(sys.stdin.readline()))

print(light(array))