首页 > 代码库 > 1-5-43:质因数分解

1-5-43:质因数分解

总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

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

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

对于60%的数据,6 ≤ n ≤ 1000。
对于100%的数据,6 ≤ n ≤ 2*10^9。
输出
输出只有一行,包含一个正整数 p,即较大的那个质数。
样例输入
21
样例输出
7
 1 #include<stdio.h> 2 #include<math.h> 3 int main() 4 { 5     int n; 6     int i,j,t,a=0; 7     scanf("%d",&n); 8     for(i=2;i<=sqrt(n+1);i++) 9     {10         if(n%i==0)11         {12             j=n/i;13             for(t=2;t<=sqrt(j+1);t++)14                 if(j%t==0)15                     break;16             if((t==sqrt(j+1))&&(j%t!=0))17                 a=1;18         }19         if(a==1)20             break;21     }22     printf("%d\n",j);23     return 0;24 }

 

1-5-43:质因数分解