首页 > 代码库 > noi 1.5 43:质因数分解

noi 1.5 43:质因数分解

描述

已知正整数 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;
            } 
        }
    }

     

  •  
  •  
  •  
  •  

noi 1.5 43:质因数分解