#include using namespace std; typedef long long ll; vector nums(1000001, 1), prime; void seive(){ for(ll i=2; i<=1000001; i++){ if(nums[i] == 1){ prime.push_back(i); for(ll j=2*i; j<=1000001; j+=i){ nums[j] = 0; } } } } ll count(ll a){ if(a == 1){ return 1; } int l = prime.size(); int num = 0; for(int i=l-1; i>=0; i--){ if(a%prime[i] == 0){ a /= prime[i]; num = prime[i]; break; } } if(num==0){ return a+1; } return num*count(a)+1; } ll cut(ll a){ int l = prime.size(); ll b = a; for(int i=0 ;i& a) { int n = a.size(); ll sum = 0; for(int i=0; i> n; vector a(n); for(int a_i = 0; a_i < n; a_i++){ cin >> a[a_i]; } ll result = longestSequence(a); cout << result << endl; return 0; }