ProjectEuler 508 Integers in base i-1 - 拼圖

Table of Contents

508. Integers in base i-1

https://projecteuler.net/problem=508

一個高斯整數a+bi的i-1進位表達式可寫成一有限數列d_(n-1)d_(n-2)...d_1d_0滿足:

 ‧a+bi = d_(n-1) (i-1)^(n-1) + d_(n-2) (i-1)^(n-2) + ... + d_1 (i-1) + d_0

 ‧每個d_k都是0或1。

 ‧首位不為0,即d_(n-1)≠0,除非a+bi = 0。

下面為一些高斯整數的i-1進位表達式:

11+24i → 111010110001101
24-11i → 110010110011
8+0i → 111000000
-5+0i → 11001101
0+0i → 0

值得一提的是,每個高斯整數都恰有一個i-1進位表達式!

定義f(a+bi)為a+bi的i-1進位表達式中1的總數。

例如,f(11+24i) = 9以及f(24-11i) = 7。

令B(L)為對所有符合|a|≦L以及|b|≦L的整數a和b,f(a+bi)的總和。

例如,B(500) = 10795060。

請求出B(10^15) mod 1000000007。

--

All Comments