https://www.acmicpc.net/problem/1806
N, S = map(int, input().split())
A = list(map(int, input().split()))
left, right, hap, result, temp = 0, 0, A[0], 0, 0
while left <= right and right < N:
if hap < S:
right += 1
if right < N:
hap += A[right]
elif hap >= S:
temp = right - left + 1
if result == 0:
result = temp
else:
result = min(result, temp)
if left < right:
hap -= A[left]
left += 1
else:
right += 1
if right < N:
hap += A[right]
print(result)
'알고리즘 > 백준 (Pyhthon)' 카테고리의 다른 글
[알고리즘] 백준 13913 숨바꼭질4 / python (0) | 2020.09.01 |
---|---|
[알고리즘] 백준 1644 소수의 연속합 / pyhton (0) | 2020.07.20 |
[알고리즘] 백준 2003 수들의 합 2 / python (0) | 2020.07.16 |
[알고리즘] 백준 2580 스도쿠 / pyhton, 백트랙킹 (0) | 2020.07.14 |
[알고리즘] 백준 9663 N-Queen / python, 백트랙킹 (0) | 2020.07.09 |