题目描述
已知正整数n是两个不同的质数的乘积,试求出较大的那个质数。
输入格式
输入只有一行,包含一个正整数n。
输出格式
输出只有一行,包含一个正整数p,即较大的那个质数。
数据范围
6≤n≤2∗109
样例
输入样例:
21
输出样例:
7
算法1
(暴力枚举)
C++ 代码
#include<iostream>
#include<cmath>
#include<cstdio>
using namespace std;
int sb(int x)
{
int i=2;
for(int i=2;i<x/i;i++)
if(x%i==0)
return 0;
else
return 1;
}
int main()
{
int n;
cin>>n;
int k;
for(int i=2;i<=n;i++)
{
if(sb(i)&&n%i==0)
{
k=i;
break;
}
}
cout<<n/k;
}
nb