Пусть у нас имеется
![$n$ $n$](https://dxdy-02.korotkov.co.uk/f/5/5/a/55a049b8f161ae7cfeb0197d75aff96782.png)
шаров, которые изначально находятся в первой из
![$n$ $n$](https://dxdy-02.korotkov.co.uk/f/5/5/a/55a049b8f161ae7cfeb0197d75aff96782.png)
пронумерованных коробок. Обозначим через
![$a(n)$ $a(n)$](https://dxdy-03.korotkov.co.uk/f/e/b/1/eb1e4d26da404d5c7d56055c19d365a082.png)
количество шагов (определение шага см. ниже), после осуществления которых все шары оказываются в последней коробке. Здесь шаг состоит изначально в определении
![$j$ $j$](https://dxdy-04.korotkov.co.uk/f/3/6/b/36b5afebdba34564d884d347484ac0c782.png)
, т.е. коробки с наименьшим номером в которой есть по крайней мере один шар. Если шар всего один, то мы перемещаем его в коробку с номером
![$j+1$ $j+1$](https://dxdy-01.korotkov.co.uk/f/c/f/f/cff3823534d4d7b1833d65d60121442f82.png)
; в противном случае (когда количество шаров -
![$k$ $k$](https://dxdy-03.korotkov.co.uk/f/6/3/b/63bb9849783d01d91403bc9a5fea12a282.png)
, такое, что
![$k>1$ $k>1$](https://dxdy-01.korotkov.co.uk/f/8/7/3/8733ac5ecc35ea70e3e236ade3c28a6082.png)
), мы перемещаем
![$\left\lfloor\frac{k}{2}\right\rfloor$ $\left\lfloor\frac{k}{2}\right\rfloor$](https://dxdy-01.korotkov.co.uk/f/4/d/c/4dcdc7920349d686f6967fa478a4bbbd82.png)
шаров в коробку с номером
![$j+1$ $j+1$](https://dxdy-01.korotkov.co.uk/f/c/f/f/cff3823534d4d7b1833d65d60121442f82.png)
, а также (за исключением для первой коробки)
![$\left\lfloor\frac{k}{2}\right\rfloor$ $\left\lfloor\frac{k}{2}\right\rfloor$](https://dxdy-01.korotkov.co.uk/f/4/d/c/4dcdc7920349d686f6967fa478a4bbbd82.png)
шаров в коробку с номером
![$j-1$ $j-1$](https://dxdy-04.korotkov.co.uk/f/f/d/a/fda4e6a332eec2a3985445b0c195f6f682.png)
.
Пусть также
![$\operatorname{wt}(n)$ $\operatorname{wt}(n)$](https://dxdy-03.korotkov.co.uk/f/e/5/c/e5cbd0547028bfe04aea4ffe3cf1586e82.png)
- это
A000120, т.е. двоичный вес
![$n$ $n$](https://dxdy-02.korotkov.co.uk/f/5/5/a/55a049b8f161ae7cfeb0197d75aff96782.png)
или количество единиц в двоичной записи
![$n$ $n$](https://dxdy-02.korotkov.co.uk/f/5/5/a/55a049b8f161ae7cfeb0197d75aff96782.png)
. Здесь
![$$\operatorname{wt}(2n+1)=\operatorname{wt}(n)+1, \operatorname{wt}(2n)=\operatorname{wt}(n), \operatorname{wt}(0)=0$$ $$\operatorname{wt}(2n+1)=\operatorname{wt}(n)+1, \operatorname{wt}(2n)=\operatorname{wt}(n), \operatorname{wt}(0)=0$$](https://dxdy-04.korotkov.co.uk/f/7/4/4/74433559ea8e6afb5f688f32c1c136d482.png)
Тогда если
![$$b(n)=n(n+1)-\sum\limits_{k=0}^{n}\operatorname{wt}(k)$$ $$b(n)=n(n+1)-\sum\limits_{k=0}^{n}\operatorname{wt}(k)$$](https://dxdy-02.korotkov.co.uk/f/1/6/3/163492ba1c06a6c3c712f4d4757d968282.png)
то я предполагаю, что
![$$a(n)=2b(n-1)$$ $$a(n)=2b(n-1)$$](https://dxdy-01.korotkov.co.uk/f/0/e/a/0ea479c4284929a43f4d71a98f2edfe882.png)
Вот простенькая программка на 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)
Существует ли способ как-то это доказать?