ll d[2d5]; int f[2d5]; { int@n,@m,@p,b=0,c=0; if(p==2){ rep(i,n){ int @a,e; b>?=a; e=__builtin_ctz(a); a>>=e; c>?=a; f[e]>?=a; } }else{ rep(i,n){ int @a,e=0; b>?=a; while(a%p==0){ a/=p; ++e; } c>?=a; f[e]>?=a; } } int i=-1; if(b>m|c>1){ d[i=0]=b; while(d[i]<=m){ rep(j,18){ d[i+j+1]>?=d[i]*f[j]; } ++i; } ++i; } wt(i); }