1 如果需要一直使用,可以打表預處理。根據遞推的關係式 函式init_phi()
2 o根號n的複雜度: phi()函式
3 篩法先求素數 o(x): x為根號n內的素數 prime_phi()函式
using namespace std;
typedef long long ll;
const int maxn=5e4;
bool isprime[maxn+10];
int p[maxn],phid[maxn+10];
int t=0;
void init()//素數表實現 }
} int phi(int n)
while(n%i==0);
} }
if(n>1)
res=res-res/n;
return res;
} int prime_phi(int n)//素數表求尤拉函式
while(n%p[i]==0);
} }
if(n>1)
res=res-res/n;
return res;
} //如果要頻繁的使用尤拉函式,需要打表預處理
void init_phi() }
} int main()
{ //init();
//init_phi();//打表預處理尤拉函式
int n;
while(~scanf(「%d」,&n))
{ if(n==0)
break;
cout<
求尤拉函式
3.尤拉函式 對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目 顯然對素數n,phi n n 1 通式 x x 1 1 p1 1 1 p2 1 1 p3 1 1 p4 1 1 pn 其中p1,p2 pn為x的所有質因數,x是不為0的整數。1 1 唯一和1互質的數就是1本身 很簡單,就不寫 ...
線性求尤拉函式
尤拉函式 在數論中,對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。先給出乙個結論 設p是素數,若p是x的約數,則e x p e x p.若p不是x的約數,則e x p e x e p e x p 1 證明如下 e x 表示比x小的且與x互質的正整數的個數。若p是素數,e p p 1。e...
尤拉公式求函式值
問題描述 利用尤拉公式,求解y 1 1 x2 2y2,當y 0 0,h 0.5時,其在0 x 4時的結點值,精確到小數點後四位。問題分析 尤拉公式推導 當dy dx f x,y 且y x0 y0時,可推導出切線方程的遞推公式,即 yi 1 yi f xi,yi xi 1 xi 和xi x0 ih 且...