#include <bits/stdc++.h>
using namespace std;
int main() {
int arr[]= {10,5,2,7,1,9};
int n=sizeof(arr)/sizeof(arr[0]);
int k=15;
int currSum=0;
int minLength=INT_MAX;
map<int, int> pSum;
pSum[0] = -1;
for(int j=0;j<n;j++){
currSum+=arr[j];
int toFind=currSum-k;
if(pSum.find(toFind)!=pSum.end()){
int index=pSum[toFind];
minLength=min(j-index, minLength);
}
pSum[currSum]=j;
}
cout<<minLength;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBhcnJbXT0gezEwLDUsMiw3LDEsOX07CglpbnQgbj1zaXplb2YoYXJyKS9zaXplb2YoYXJyWzBdKTsKCWludCBrPTE1OwoJaW50IGN1cnJTdW09MDsKCWludCBtaW5MZW5ndGg9SU5UX01BWDsKCW1hcDxpbnQsIGludD4gcFN1bTsKCXBTdW1bMF0gPSAtMTsKCWZvcihpbnQgaj0wO2o8bjtqKyspewoJCWN1cnJTdW0rPWFycltqXTsKCQlpbnQgdG9GaW5kPWN1cnJTdW0tazsKCQlpZihwU3VtLmZpbmQodG9GaW5kKSE9cFN1bS5lbmQoKSl7CgkJCWludCBpbmRleD1wU3VtW3RvRmluZF07CgkJCW1pbkxlbmd0aD1taW4oai1pbmRleCwgbWluTGVuZ3RoKTsKCQl9CgkJcFN1bVtjdXJyU3VtXT1qOwoJfQoJY291dDw8bWluTGVuZ3RoOwoJcmV0dXJuIDA7Cn0K