3 条题解
-
2
虽然只有一种味道,但真的 鲜~
葵花子味
#include<iostream> #include<iomanip> using namespace std; const int SB=1e6+10; int n; bool d[SB],b[SB],c[SB],flag=false; int a[SB]; void print(){ flag=true; int i; for(int i=1;i<=n;i++){ cout<<setw(5)<<a[i]; } cout<<endl; } void search(int i){ for(int j=1;j<=n;j++){ if((!b[j])&&(!c[i+j])&&(!d[i-j+n-1])){ a[i]=j; b[j]=1; c[i+j]=1; d[i-j+n-1]=1; if(i==n) print(); else search(i+1); b[j]=0; c[i+j]=0; d[i-j+n-1]=0; } } } int main(){ cin>>n; search(1); if(flag==false){ cout<<"no solute!"; } } -
0
#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; }
$$ -
-1
#include<iostream> #include<iomanip> using namespace std; int n; bool d[100],b[100],c[100],flag=false; int a[100]; void print(){ flag=true; int i; for(int i=1;i<=n;i++){ cout<<setw(5)<<a[i]; } cout<<endl; } int search(int i){ for(int j=1;j<=n;j++){ if((!b[j])&&(!c[i+j])&&(!d[i-j+n-1])){ a[i]=j; b[j]=1; c[i+j]=1; d[i-j+n-1]=1; if(i==n) print(); else search(i+1); b[j]=0; c[i+j]=0; d[i-j+n-1]=0; } } } int main(){ cin>>n; search(1); if(flag==false){ cout<<"no solute!"; } }
- 1
信息
- ID
- 1304
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 373
- 已通过
- 98
- 上传者