2463: 【入门】【P1075】质因数分解
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:22
解决:7
题目描述
已知正整数 是两个不同的质数的乘积,试求出两者中较大的那个质数。
输入
输入一个正整数 。
输出
输出一个正整数 ,即较大的那个质数。
样例输入 复制
21
样例输出 复制
7
提示
NOIP 2012 普及组 第一题
#include <iostream>
using namespace std;
bool is_prime(int x) {
if (x<2) return false;
for (int i=2;i*i<=x;i++)
if (x%2==0) return false;
return true;
}
int main(){
long long n,ans;
cin>>n;
for (int i=2;i*i<=n;i++)
{
if (is_prime(i) && n%i==0) {
ans=n/i;
if (is_prime(ans)) {
cout<<ans;
return 0;
}
}
}
return 0;
}