莫名其妙4个点WA
查看原帖
莫名其妙4个点WA
806448
hjwen25楼主2023/2/25 11:32

有没有哪位大佬来看一下为什么4个点WA

就莫名其妙的出错了

#include <bits/stdc++.h>
using namespace std;
int t,n,a[1000001],current;
bool isPrime[5000001],w[1000001];
void solve(){
    cin>>n;
    current=0;
    memset(w,true,sizeof(w));
    memset(a,0,sizeof(a));
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(isPrime[a[i]]){
            a[i]=0;
            w[i]=true;
            continue;
        }
        if(a[i]%4==0)
            w[i]=false;
        else
            w[i]=true;
        a[i]=a[i]/4+1;
    }
    for(int i=1;i<n;i++)
        if(a[i]<a[current])
            current=i;
    if(w[current])
        cout<<"Farmer John\n";
    else
        cout<<"Farmer Nhoj\n";
}
int main(){
    cin>>t;
    memset(isPrime,true,sizeof(isPrime));
    for(int i=2;i*i<=5000000;i++)
        if(isPrime[i])
            for(int j=i*i;j<=5000000;j+=i)
                isPrime[j]=false;
    while(t--)
        solve();
    return 0;
}
2023/2/25 11:32
加载中...