八皇后求助
  • 板块学术版
  • 楼主Minecraft_BE
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/9/15 11:05
  • 上次更新2024/9/15 14:13:24
查看原帖
八皇后求助
1373638
Minecraft_BE楼主2024/9/15 11:05

(灌水发过了,然后没人理

好久没学DFS,昨天既然连八皇后都不会了(……

12分 AC on #1……

求条

#include<bits/stdc++.h>
using namespace std;
int cnt;
bool v[100]={false},lx[100]={false},rx[100]={false};
int a[100],b[100],c[100];
void dfs(int x,int n){
	if(x==n){
		cnt++;return;
	}
	for(int i=1;i<=n;i++){
		if(v[i]||lx[i-x+n]||rx[x+i])continue;
		v[i]=1;
		lx[i-x+n]=1;
		rx[x+i]=1;
		dfs(x+1,n);
		v[i]=0;
		lx[i-x+n]=0;
		rx[x+i]=0;
	}
}
int main(){
	int as;cin>>as;
	dfs(0,as);
	cout<<cnt;
}

好久没学了,写的比较烂,勿喷

2024/9/15 11:05
加载中...