#include <iostream>
#include<vector>
#include<unordered_map>
using namespace std;

int main() {
	vector<int> arr={15,-2,2,-8,1,7,10};
	
	unordered_map<int,int> m;
	int longest=0;
	int sum=0;
	
	for(int i=0;i<arr.size();i++) {
		sum+=arr[i];
		
		if(arr[i]==0) {
			longest=i+1;
		}
		
		if(m.find(sum)!=m.end()) {
			longest=max(longest,i-m[sum]);
		}
		else {
			m[sum]=i;
		}
	}
	cout<<longest;
	return 0;
}