ull d[1d7+2]; { rep(i,1,1d7+2>>1){ d[i*2+0]=i; d[i*2+1]=i*2+1; } rep(i,3,1d7+1){ if(d[i]==i){ unsigned v=i; v*=2-i*v; v*=2-i*v; v*=2-i*v; v*=2-i*v; v*=i-1; rep(j,i,1d7+1,i){ d[j]=(unsigned)d[j]*v; } } d[i]=d[i-1]-d[i]+i*2-2; } ll@t; rep(t){ ll@n; wt(d[n]); } }