标签:== code 质因数 current turn 链接 line logs lag
NOIP2012普及组第一题
已知正整数n是两个不同的质数的乘积试求出较大的那个质数。
输入只有一行包含一个正整数n。
输出只有一行包含一个正整数p, 即较大的那个质数。
21
7
1S
【数据范围】 对于60%的数据,6 ≤ n ≤ 1000。 对于100%的数据,6 ≤ n ≤ 2*10的9次方
NOIP2012普及组第一题
题目链接:https://vijos.org/p/1786
分析:大暴力吧,说白了,判一发质数然后找最大就好了!
下面给出AC代码:
1 #include <bits/stdc++.h> 2 using namespace std; 3 bool gcd(int a) 4 { 5 int flag=1; 6 for(int i=2;i<=(int)sqrt(a);i++) 7 { 8 if(a%i==0) 9 { 10 flag=0; 11 break; 12 } 13 } 14 if(!flag) 15 return false; 16 return true; 17 } 18 int main() 19 { 20 int n; 21 cin>>n; 22 int maxn=0; 23 for(int i=1;i<=(int)sqrt(n);i++) 24 { 25 if(n%i==0) 26 { 27 int t=n/i; 28 if(gcd(t)) 29 maxn=max(maxn,t); 30 } 31 } 32 cout<<maxn<<endl; 33 return 0; 34 }
标签:== code 质因数 current turn 链接 line logs lag
原文地址:http://www.cnblogs.com/ECJTUACM-873284962/p/7010515.html