#include using namespace std; const int NMax = 1e5 + 5; int v[NMax]; int s[NMax]; map < int, int > Map; int main(){ #ifndef ONLINE_JUDGE freopen("a.in", "r", stdin); #endif // ONLINE_JUDGE int n, x; cin >> n; for(int i = 1; i <= n; i++){ cin >> v[i]; } for(int i = 1; i <= n; i++){ cin >> x; v[i] -= x; s[i] = s[i - 1] + v[i]; } int best = 0; for(int i = 1; i <= n; i++){ if(s[i] == 0){ best = max(best, i); } else { if(Map[s[i]] == 0){ Map[s[i]] = i; } else { best = max(best, i - Map[s[i]]); } } } cout << best; return 0; }