#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int main() {
// your code goes here
vector<int>arr={1,0,1,1,0,2};
int k=3;
unordered_map<int,int>mpp;
mpp[0]=-1;
int maxlen=0;
int sum=0;
for(int i=0;i<arr.size();i++){
sum+=arr[i];
int rem=sum-k;
if(mpp.find(sum-k)!=mpp.end()){
int len=i-mpp[sum-k];
maxlen=max(maxlen,len);
}
if(mpp.find(sum)==mpp.end())mpp[sum]=i;
}
cout<<maxlen;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCgl2ZWN0b3I8aW50PmFycj17MSwwLDEsMSwwLDJ9OwoJaW50IGs9MzsKCXVub3JkZXJlZF9tYXA8aW50LGludD5tcHA7CgltcHBbMF09LTE7CglpbnQgbWF4bGVuPTA7CglpbnQgc3VtPTA7Cglmb3IoaW50IGk9MDtpPGFyci5zaXplKCk7aSsrKXsKCQlzdW0rPWFycltpXTsKCQlpbnQgcmVtPXN1bS1rOwoJCWlmKG1wcC5maW5kKHN1bS1rKSE9bXBwLmVuZCgpKXsKCQkJaW50IGxlbj1pLW1wcFtzdW0ta107CgkJCW1heGxlbj1tYXgobWF4bGVuLGxlbik7CgkJfQoJCWlmKG1wcC5maW5kKHN1bSk9PW1wcC5lbmQoKSltcHBbc3VtXT1pOwoJfQoJY291dDw8bWF4bGVuOwoJcmV0dXJuIDA7Cn0=