[NOIP2012 普及组] 质因数分解

题目链接

题目描述
已知正整数n是两个不同的质数的乘积,试求出两者中较大的那个质数。

输入格式
一个正整数n。

输出格式
一个正整数p,即较大的那个质数。

代码:

#include<iostream>
using namespace std;
bool is_prime(int n)
{
    
    
	for(int i = 2; i * i <= n; i++)
		if(n % i == 0) return false;
	return n != 1;
}
int main()
{
    
    
	int n;
	cin >> n;
	for(int i = 2; i <= n; i++)
		if(is_prime(i) && n % i == 0 && is_prime(n / i) && n % i != i)
		{
    
    
			cout << n / i;
			break;
		}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_44826711/article/details/113738691