比赛 20241125 评测结果 AAATTTTT
题目名称 张小牛日记 最终得分 38
用户昵称 黄天乐 运行时间 10.167 s
代码语言 C++ 内存使用 3.21 MiB
提交时间 2024-11-25 11:41:31
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int T,n;
int walk[105];
int ans;
const int M=1997;
void dfs(int cnt){
    if(cnt==n+1){
        int w=0,e=0,ni=0,s=0;
        for(int i=1;i<=n;i++){
            if(walk[i]==1)w++;
            if(walk[i]==2)e++;
            if(walk[i]==3)ni++;
            if(walk[i]==4)s++;
        }
        if(w==e&&ni==s)ans++;
        ans%=M;
        return ;
    }
    for(int i=1;i<=4;i++){
        if(walk[cnt]==0){
            walk[cnt]=i;
            dfs(cnt+1);
            walk[cnt]=0;
        }
    }
}
int main(){
    freopen("diary.in","r",stdin);
    freopen("diary.out","w",stdout);
    cin>>T;
    while(T--){
        memset(walk,0,sizeof(walk));
        ans=0;
        cin>>n;
        dfs(1);
        cout<<ans<<endl;
    }
    return 0;
}