资深光能
#include<bits/stdc++.h>
using namespace std;
long long n,j,i,a[100001],b[100001],max1,s=0;
int main()
{
cin>>n;
for(int k=1;k<=n;k++)
{
cin>>a[k];
for(i=a[k];i>=1;i--)
{
s=0;
for(j=i-1;j>=2;j--)
{
if(i%j!=0)
{
s++;
}
else break;
}
if(s==i-2)
{
if(a[k]%i==0)
{
b[k]=i;
break;
}
}
else b[k]=0;
}
}
max1=b[1];
s=1;
for(i=2;i<=n;i++)
{
if(b[i]>max1)
{
s=i;
max1=b[i];
}
}
cout<<a[s];
return 0;
}
哪错了
资深守护
定义 n,a,tmp,maxn,maxt;
bool judge(int n){//判断质数
if(n==1) return false;
循环 i从2开始,至sqrt(n)结束{
if(n%i==0) 返回 false;
}
返回 true;
}
主函数:
cin>>n;
循环 i从1开始,至n结束{
cin>>a;
循环 j从a开始,至1结束,j--{
if(a%j==0&&judge(j)){
tmp=j;
break;
}
}
if(maxn<tmp){
maxn=tmp;
maxt=a;
}
}
cout<<maxt;
荣逸乐在2020-09-16 17:22:49追加了内容
对了,头文件要加:#include<cmath>