| For All Solvers
OMC217

OMC217(E)

 2k2^{k} を約数として持つ 11 以上 nn 以下の整数の個数を Cn,kC_{n,k} で表すことにすると, k=1nf(k)=k=02kCn,k\sum_{k = 1} ^ {n} f(k) = \sum_{k = 0}^{\infty} 2^{k}C_{n,k} となる.ここで,Cn,k=n2kC_{n,k} = \bigg \lfloor {\cfrac{n}{2^{k}}} \bigg \rfloor であるから,正の整数 x,yx,y に対して x%yx\% yxxyy で割ったあまりを表すことにすると, 2kCn,k=nn%2k2^{k}C_{n,k} = n - n\% 2^{k} である.今,21000n<2100112^{1000} \le n \lt 2^{1001} - 1 の場合は,Cn,k>0C_{n,k} \gt 0 となる kk の範囲は 0k10000 \leq k \leq 1000 であるので, g(n)=1000n+k=01000(nn%2k)=nk=01000n%2kg(n) = -1000n + \sum_{k = 0}^{1000} (n - n \% 2^{k}) = n - \sum_{k = 0}^{1000} n \% 2^{k} と分かる.
 ここで,nn22 進数表記を b1000b999b0b_{1000}b_{999} \cdots b_{0} とする.このとき,n%20=0n\%2^0 = 0 であり,k1k\ge1 のときには n%2k=i=0k12ibin\%2^{k} = \sum_{i = 0}^{k - 1}2^{i}b_i となるため, k=01000n%2k=k=010002k(1000k)bk\sum_{k = 0}^{1000} n\% 2^{k} = \sum_{k = 0}^{1000}2^{k}(1000-k)b_{k} を得る.これより,b1000=1b_{1000} = 1 であることに気をつければ, g(n)=nk=01000 n2k=21000k=09992k(999k)bkg(n) = n - \sum_{k = 0}^{1000} \ n % 2^{k} = 2^{1000} - \sum_{k = 0}^{999}2^{k}(999 - k)b_{k} が分かる.ここで,k=09992k(999k)bk\displaystyle\sum_{k = 0}^{999}2^{k}(999 - k)b_{k} の各項の bkb_k の係数は,kk に対して (k=999k = 999 を除き) 広義単調増加である.また, k=042k(999k)<25(9995),k=012k(999k)<22(9992) \sum_{k = 0}^{4}2^{k}(999 - k) \lt 2^{5}(999-5),\quad \sum_{k = 0}^{1}2^{k}(999 - k) \lt 2^{2}(999-2) がそれぞれ成り立つので,g(n)g(n) のとり得る 3737 番目に大きい値は 21000(25(9995)+22(9992))=21000357962^{1000} - (2^5(999-5) + 2^2(999-2)) = 2^{1000} - 35796 であり,これを 997997 で割ったあまりはフェルマーの小定理により 112\bf112 と分かる.

補足. 最後の議論と同様に考えることで,n21000n - 2^{1000} が十分に小さい範囲では g(n)g(n) は狭義単調減少であることがわかる.

解説YouTube

解説YouTubeが存在しません.