Algorithms/Greedy Algorithm
[투 포인터 알고리즘] 부분합
잉숭
2021. 9. 7. 15:52
기출: 백준 1806
n, s = map(int,input().split())
arr = list(map(int,input().split()))
ans = int(1e9)
st, en = 0, 0
sum = arr[0]
while en<n:
if sum >= s:
while st<=en and sum >= s:
ans = min(ans, en-st+1)
sum -= arr[st]
st += 1
else:
en += 1
if en<n:
sum += arr[en]
if ans == int(1e9):
ans = 0
print(ans)