3 条题解

  • 0
    @ 2026-5-27 19:25:11

    #include #include<bits/stdc++.h> using namespace std; #define int long long const int N=1e6+10; string a; bool col[N],zhu[N],fu[N],flag; int box[N]; int n; void dfs(int step){ if(stepn+1){ for(int i=1;i<=n;i++){ cout<<setw(5)<<box[i]; } cout<<endl; flag=1; return; } for(int i=1;i<=n;i++){ if(!col[i]&&!zhu[step+i-1]&&!fu[step-i+n]){ box[step]=i; col[i]=zhu[step+i-1]=fu[step-i+n]=1; dfs(step+1); col[i]=zhu[step+i-1]=fu[step-i+n]=0; } } } signed main() { cin>>n; dfs(1); if(flag0){ cout<<"no solute!"; } return 0; }

    language ```language
    
    $$

    信息

    ID
    1304
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    383
    已通过
    104
    上传者