#include using namespace std; int Trie[800001][26]; int d[800000]; int start[100001]; int main(){cin.tie(0);ios::sync_with_stdio(false); int N;scanf("%d%*c",&N); int s=1,j=0; for(int i=0;ij){ swap(i,j); }else{ ++j; } X+=D; if(X>=NN){ X-=NN; } int ok=0,ng=min(start[i+1]-start[i],start[j+1]-start[j])+1; while(ng-ok>1){ int k=ok+ng>>1; (d[start[i]-1+k]==d[start[j]-1+k]?ok:ng)=k; } z+=ok; } cout<