hdu1787-GCD Again

701 단어 HDU
비 배열 형식 으로 빅 데이터 에 사용
#include<iostream>

#include<cstdio>

#include<algorithm>

#include<cstring>



using namespace std ;

#define INT __int64



int enlerfun( int n )

{

	int tempnum = 1 ;

	int i ;

	for( i = 2 ; i * i <= n ; ++i )

	{

		if( n % i == 0 )

		{

			n /= i ;

			tempnum *= ( i - 1 ) ;

			while( n % i == 0 )

			{

				n /= i ;

				tempnum *=  i  ;

			} 

		}

	}

	if( n > 1 ) 

		tempnum *= ( n - 1 ) ;

	return tempnum ;

}



int main()

{

	int n ;

	int count ;

	while( ~scanf( "%d" , &n ) && n )

	{

		printf( "%d
" , n - 1 - enlerfun( n ) ) ; } return 0 ; }

좋은 웹페이지 즐겨찾기