program vaneck; eck := [0]; loop for i in [1..999] do prev := eck(..#eck-1); eck(i+1) := i - (max/[j : e=prev(j) | e=eck(i)] ? i); end loop; print(eck(1..10)); print(eck(991..1000)); end program;