描述 Description
给出N个数字,试求质因数最大的数字。
输入格式 InputFormat
第一行,一个整数N,表示数字个数。
接下来N行,每行一个整数A_i,表示给出的数字。
输出格式 OutputFormat
一个整数,表示质因数最大的数字。
数据范围和注释 Hint
N <= 5000 , A_i <= 20000
举例 38和12
38=19*2
12=2*3*3
38最大的是19
12最大的是3
所以本数据要输出38
样例输入:
4
36
38
40
42
样例输出:
38
代码:
#include
#include
int a[5010];
int zhi(int n)
{
if(n==2) return 1;
for(int i=2;i<=sqrt(n);i++)
if(n%i==0) return 0;
return 1;
}
int yin(int n)
{
int c;
if(zhi(n)) return n;
for(int i=2;i
return c;
}
int main(int argc, char *argv[])
{
int n,i,max,l;
scanf("%d",&n);
for(i=0;i
max=1;
for(i=0;i
max=yin(a[i]); l=a[i];
}
printf("%d\n",l);
return 0;
}