2012 junior T1 质因数分解 题解

题目描述

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

输入格式:

一个正整数n。

输出格式:

一个正整数p,即较大的那个质数。

输入样例1:

21

输出样例1:

7

【样例说明】

n≤2×10^9

解题思路

是质数的话只需要从2开始一个一个试过去,是n的因数就停止。这个答案p1肯定是较小的那个。只需要用n/p1就可以得出p了

代码

#include <iostream>
#include <cmath>
using namespace std;
int main(){
	int a;
	cin>>a;
	int b=sqrt(a);
	int ans=0;
	for(int i=2;i<=b;i++){
		if(a%i==0){
			cout<<a/i;
			return 0;
		}
	}
	return 0;
}

太简单了










我太聪明了

猜你喜欢

转载自blog.csdn.net/johnwayne0317/article/details/84324926
今日推荐