Сдаётся мне, получить O(1) не получится ни по n, ни по k. Потому что уже для получения первой цифры по номеру надо уметь определять, в каком из интервалов вида (f(n,k,x),g(n,k,x)] лежит этот номер, где f(n,k,x) = C(n-x-1,k-1), g(n,k,x) = f(n,k,x)+C(n-x-2,k-1). Быстро не вычислить.