poj 1284 Primitive Roots(欧拉函数,原根定理)

来源:互联网 发布:电脑优化提速 编辑:程序博客网 时间:2024/06/08 03:03


poj 1284 Primitive Roots


想了半天没想出来怎么做、、、搜一下,这、、、有个原根的性质:当模m有原根时,它有φ(φ(m))个原根,好嘛,就这样、、


百度百科原根


#include<stdio.h>#include<string.h>int eular(int n){    int ans=n;    for(int i=2;i*i<=n;i++)    {        if(n%i==0)        {            ans-=ans/i;            while(n%i==0)                n/=i;        }    }    if(n>1) ans-=ans/n;    return ans;}int main(){    int n;    while(scanf("%d",&n)!=EOF)        printf("%d\n",eular(n-1));    return 0;}




0 0
原创粉丝点击