首页 > 其他 > 详细

质因数分解

时间:2019-12-06 16:49:07      阅读:106      评论:0      收藏:0      [点我收藏+]

题目描述 

已知正整数n是两个不同的质数的乘积,试求出较大的那个质数。

输入描述:

输入只有一行,包含一个正整数n。

输出描述:

输出只有一行,包含一个正整数p,即较大的那个质数。
示例1

输入

复制
21

输出

复制
7

备注:

对于60%的数据,6≤n≤1000。
对于100%的数据,6≤n≤2*10^9。
解析:
说实话,看到这个题目是不是就觉得得分别判断这两歌树是不是质数。一开始我就想先暴力找到一个能被n整除的较小的质数,然后用n/min不就行了吗,可是后来一想,不对呀,不能保证大的数也是质数呀,于是,我就看了看数据,还是硬着头皮将这个想法敲上了,一提交竟然对了???黑人问号???可是后来一想,给出的这个数肯定能分解成两个质因数,而像24,100这样的数,肯定就不在考虑范围了。
 1 #include <iostream>
 2 #include <cstdio>
 3 #include <algorithm>
 4 #include <string>
 5 #include <cstring>
 6 #include <cstdlib>
 7 #include <cmath>
 8 #include <stack>
 9 #include <queue>
10 #include <set>
11 #include <map>
12 #include <vector>
13 #include <ctime>
14 #include <cctype>
15 #include <bitset>
16 #include <utility>
17 #include <sstream>
18 #include <complex>
19 #include <iomanip>
20 #define inf 0x3f3f3f3f
21 typedef long long ll;
22 using namespace std;
23 ll n;
24 int main()
25 {
26     cin>>n;
27     for(int i=2; i<=n/2; i++)
28     {
29         if(n%i==0)
30         {
31             cout<<n/i<<endl;
32             break;
33         }
34     }
35     return 0;
36 }

 

质因数分解

原文:https://www.cnblogs.com/mxnzqh/p/11996124.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!