Problem 3 Largest prime factor (分解素因子)

Largest prime factor

Problem 3

The prime factors of 13195 are 5, 7, 13 and 29.

What is the largest prime factor of the number 600851475143 ?


Answer:
6857

题解:

Let the given number be n and let k = 2, 3, 4, 5, ... . For each k, if it is a factor of n then we divide n by k and completely divide out each k before moving to the next k. It can be seen that when k is a factor it will necessarily be prime, as all smaller factors have been removed, andthe final result of this process will be n = 1.

代码:

#include 
using namespace std;
long long num = 600851475143ll;
int main()
{
	long long i, max = 1;
	for(i = 2; i * i <= num; i++)
	{
		if(num % i == 0)
		{
			max = i;
			while(num % i == 0) num /= i;
		}
 	 if(num > 1) max = num;
	}		
	cout<


你可能感兴趣的:(Project,Euler,ACM_素数)