P1075 [NOIP2012 普及组] 质因数分解
题目描述
已知正整数n是两个不同的质数的乘积,试求出两者中较大的那个质数。
输入格式
一个正整数n。
输出格式
一个正整数p,即较大的那个质数。
输入输出样例
输入
21
输出
7
解析
因为题目中n是一组质数的乘机,所以只需要求出其中的一个质数就行了,而一个用n/i就可以算出。
AC代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long n;
cin>>n;
for(int i=2;i<=sqrt(n);i++) //n=p1*p2,而p1>sqrt(n);p2<sqrt(n),所以此法更便捷
{
if(n%i==0)
{
cout<<n/i<<endl;
}
}
}