#include #include #include #include using namespace std; long N; int K; long A[1010],B[1010]; vectorsucc(vectorF) { long nxt=-9e18; for(int j=0;j>K>>N; for(int i=0;i>A[i]; for(int i=0;i>B[i]; if(NF(A,A+K); N-=K; map,int>mp; int now=0; mp[F]=now; while(N>0) { N--; F=succ(F); now++; if(mp.find(F)!=mp.end())N%=now-mp[F]; else mp[F]=now; } cout<