hor = vector(10 000) ver = vector(#hor) dia = vector(2*#hor-1) { for (d=1, #hor, for (c=1, d, r = d-c+1; x = bitor(hor[r], bitor(ver[c], dia[r-c+#hor])); v = valuation(1+x,2); p = 2^v; hor[r] += p; ver[c] += p; dia[r-c+#hor] += p; if (r==c, print (r-1 " " v); ); ); ); } quit