- 描述
-
已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数。 - 输入
- 输入只有一行,包含一个正整数 n。
对于60%的数据,6 ≤ n ≤ 1000。
对于100%的数据,6 ≤ n ≤ 2*10^9。 - 输出
- 输出只有一行,包含一个正整数 p,即较大的那个质数。
- 样例输入
-
21
- 样例输出
-
7
- 来源
- NOIP2012复赛 普及组 第一题
#include<bits/stdc++.h> using namespace std; int n; int main() { scanf("%d",&n); for(int i=2;i<n;i++) { if(n%i==0) { printf("%d",n/i); break; return 0; } } return 0; }
- 法二
#include<iostream> #include<cmath> using namespace std; int main() { int n,t; cin>>n; t=sqrt(n); for(int i=2;i<=t;i++) { if(n%i==0) { cout<<n/i; return 0; } } }
时间: 2024-10-19 20:42:51