51nod 1136 尤拉函式

2021-07-31 05:16:58 字數 697 閱讀 6100

1136 尤拉函式

基準時間限制:1 秒 空間限制:131072 kb 分值: 0 難度:基礎題 收藏 取消關注

對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler』s totient function、φ函式、尤拉商數等。例如:φ(8) = 4(phi(8) = 4),因為1,3,5,7均和8互質。

input

輸入乙個數n。(2 <= n <= 10^9)

output

輸出phi(n)。

input示例

8 output示例

4思路:裸的尤拉函式

φ(x)=x(1-1/p1)(1-1/p2)……….(1-1/pn)

p1,p2,,,,pn為x的唯一素因子

如:8=2*2*2 ,φ(8)=8*(1-1/2)=4;

**:

#include

#include

#include

using

namespace

std;

int euler(int n)} }

if(f)

return n-1;

if(n>1)

res=(res-res/n);

return res;

}int main()

51nod1136 尤拉函式

對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler s totient function 函式 尤拉商數等。例如 8 4 phi 8 4 因為1,3,5,7均和8互質。input 輸入乙個數n。2 n 10 9 output 輸出phi n ...

51nod 1136 尤拉函式

對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler s totient function 函式 尤拉商數等。例如 8 4 phi 8 4 因為1,3,5,7均和8互質。input 輸入乙個數n。2 n 10 9 output 輸出phi n ...

51nod 1136 尤拉函式

1136 尤拉函式 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 對正整數n,尤拉函式是少於或等於n的數中與n互質的數的數目。此函式以其首名研究者尤拉命名,它又稱為euler s totient function 函式 尤拉商數等。例如 8 4 phi 8 4 因為1,...