Пусть у нас имеется
шаров, которые изначально находятся в первой из
пронумерованных коробок. Обозначим через
количество шагов (определение шага см. ниже), после осуществления которых все шары оказываются в последней коробке. Здесь шаг состоит изначально в определении
, т.е. коробки с наименьшим номером в которой есть по крайней мере один шар. Если шар всего один, то мы перемещаем его в коробку с номером
; в противном случае (когда количество шаров -
, такое, что
), мы перемещаем
шаров в коробку с номером
, а также (за исключением для первой коробки)
шаров в коробку с номером
.
Пусть также
- это
A000120, т.е. двоичный вес
или количество единиц в двоичной записи
. Здесь
Тогда если
то я предполагаю, что
Вот простенькая программка на PARI для проверки:
Код:
a(n)=my(A, B, v); v=vector(n, i, 0); v[1]=n; A=0; while(v[n]!=n, B=1; while(v[B]<1, B++); v[B+1]+=if(v[B]==1,1,v[B]\2); if(B>1,v[B-1]+=v[B]\2); v[B]-=if(v[B]==1,1,(1+(B>1))*(v[B]\2)); A++); A
b(n)=n*(n+1) - sum(k=0,n,hammingweight(k))
test(n)=a(n)==2*b(n-1)
Существует ли способ как-то это доказать?