#pragma GCC target("avx2") #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") #include using namespace std; int main(){ int n; cin >> n; vectora(n), b(n); for(int i = 0; i < n; i++)cin >> a[i]; for(int i = 0; i < n; i++)cin >> b[i]; long long ans = 0; const int sz = 400005; bitsetat, bt; for(int l = 0; l < n; l++){ int dif = 0; for(int r = l; r < n; r++){ if(!at[a[r]]){ at[a[r]] = true; if(!bt[a[r]])dif++; else dif--; } if(!bt[b[r]]){ bt[b[r]] = true; if(!at[b[r]])dif++; else dif--; } if(dif == 0)ans++; } for(int r = l; r < n; r++){ at[a[r]] = false; bt[b[r]] = false; } } cout << ans << endl; }