n,m = map(int,input().split()) a = list(map(int,input().split())) end = 0 s = 0 cnt = 0 for start in range(len(a)): while end < n and s < m: s += a[end] end += 1 if s == m: cnt += 1 s -= a[start] print(cnt) start 포인트를 for문을 돌면서 하나씩 접근한다 while문은 end포인트를 도는 것으로 두 개의 포인터로 해당 리스트를 돌면서 조건을 확인한다. 이때 s에서 start부분을 빼주는 이유는 해당 범위를 돌 때 1,2,3을 돈다고 하면 조건을 만족해 2,3,4를 돌아야 한다고 할 때 2,3이 겹치기 때문에 이때 해당 start 부분만 지..