對正整數n,尤拉函式是小於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler's totient function、φ函式、尤拉商數等。例如:φ(8) = 4(phi(8) = 4),因為1,3,5,7均和8互質。
s(n) = phi(1) + phi(2) + ...... phi(n),給出n,求s(n),例如:n = 5,s(n) = 1 + 1 + 2 + 2 + 4 = 10,定義phi(1) = 1。由於結果很大,輸出mod 1000000007的結果。
input
輸入乙個數n。(2 <= n <= 10^10)output
輸出s(n) mod 1000000007的結果。input示例
5output示例
10
#include#include#define n 2000010
#define ha 2333333
#define mod 1000000007
#define ni 500000004
#define lon unsigned long long
using
namespace
std;
intphi[n],prime[n],cnt,tot,head[n],vis[n];
lon n,sum[n];
struct nodee[n];
void add(int
u,lon v,lon x)
void
get_prime()}}
for(int i=1;i1]+phi[i])%mod;
}lon solve(lon x)
ans=((x%mod*(x+1)%mod)%mod*ni%mod-ans+mod)%mod;
add(k,x,ans);
return
ans;
}int
main()
51nod1239 尤拉函式之和
求 i 1n i n 10 10 這道題和莫比烏斯函式一行,都可以通過神奇的推導的出結論。我們設 n i 1n i 眾所周知,d n d n 那麼,n n d n,d d 於是 n i 1n i d i,d d n n n 1 2 i 2n d i d d n n n 1 2 i d 2n d 1 ...
51nod 1239 尤拉函式之和
求 n i 1 i 1 n 10 杜教篩第二道裸題。必要結論 i n i n 證明 設f n i n i 將n分解質因數,n p qii 利用莫比烏斯函式裡學到的乙個性質,可以得到 f n f pq ii f pq qk 0 pk q k 1p k pk 1 1 p q f n n 設s n n i...
51Nod 1239 尤拉函式之和
acm模版 這個題和那個 51nod 1244 莫比烏斯函式之和 的方法幾乎一模一樣,差別就是推導公式的結果不一樣罷了,但是形式是一樣的。推導如下 設 f n i 1 n i 通過尤拉函式的性質我們可以知道 d n d n 所以呢,n n d n,d d f n i 1n i d i,d d f n...