USACO上那是什么鬼,各位大佬帮帮忙

@殇の星辰 2018-12-22 09:04 回复
/*
ID:shang_w1
LANG:C++
TASK:namenum
*/
#include<bits/stdc++.h>
using namespace std;
int hehe;
int he[13];
char ha[13];
int num=4617;
char haha[13];
int change(char i)
{
    int j=i-'A';
    if(i>'Q')
        j--;
    j/=3;j+=2;
    return j;
}
int main()
{
    freopen("namenum.in","r",stdin);
    freopen("namenum.out","w",stdout);
    cin>>(ha+1);
    int len=strlen(ha+1);
    for(int i=1;i<=len;i++)
        he[i]=ha[i]-'0';
    while(num--)
    {
        cin>>(haha+1);
        int len_=strlen(haha+1);
        if(len_!=len)
            continue;
        int flag=0;
        for(int i=1;i<=len;i++)
        {
            if(haha[i]=='Q'||haha[i]=='Z')
            {
                flag=1;
                break;
            }
            int tmp=change(haha[i]);
            if(tmp!=he[i])
            {
                flag=1;
                break;
            }
        }
        if(!flag)
        {
            cout<<(haha+1)<<endl;
            hehe=1;
        }
    }
    if(!hehe)
        puts("NONE");
    return 0;
}

我的代码在洛谷上去了freopen就A了 但是USACO上面第一个就…… 到底是什么骚操作啊QAQ 求求各位大佬帮帮忙