p1906.cpp
来自「高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程」· C++ 代码 · 共 20 行
CPP
20 行
#include <stdio.h>
int N;
int phi ( int N )
{
int i , j;
int Ret = N;
for ( i = 2 , j = 4; j <= N; j += i + i + 1 , i ++ ) if ( N % i == 0 )
for ( Ret = Ret / i * ( i - 1 ); N % i == 0; N /= i );
if ( N > 1 ) Ret = Ret / N * ( N - 1 );
return Ret;
}
main ()
{
while ( scanf ( "%d" , &N ) , N )
printf ( "%d\n" , phi ( N ));
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?