題目在這裡呀!
跟上面一題一樣,也是杜教篩的基礎題。
推導也跟上面一題基本一樣。
for(int i=1;i<=n;i++) ans+=phi[d] (d|i)
φ*1=id 所以呢ans=n*(n+1)/2。
同樣的,
for(int i=1;i<=n;i++)
for(int j=1;j<=n/i;j++) ans+=phi[j];
後者的ans也等於n*(n+1)/2,不再解釋了。
同樣把i=1的單獨拿出來通過移項就可以得到
σi=1~n φ(i) = n*(n+1)/2 - σi=2~n σj=1~⌊n/i
⌋ φ(j)
(公式真的好難看qwq
//suplex
#include #include #include #include #include #define n 5000000+5000
#define ll long long
using namespace std;
const int mod=1000007;
const int p=1000000007;
int cnt,tot,prime[n],head[mod+10],next[n];
bool vis[n];
ll n,phi[n],t[500000],hashx[500000];
inline void insert(ll k,ll val)
inline ll find(ll k)
void pre(){
phi[1]=1;
for(int i=2;i
51nod點頭網 1136 尤拉函式
來自51nod點頭網的題 1136 尤拉函式 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 收藏 關注 對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler s totient function 函式 尤拉商數等。...
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...