ans

liujunhao 2024-02-01 15:39:35 2024-02-01 16:04:04 10 返回题目

不许抄!只供参考

#include<bits/stdc++.h>

using namespace std;

int n,ret=0,lie[15],xie1[100],xie2[100];

void dfs(int row){

if(row==n+1){
	ret++;
	return ;
}
for(int col=1;col<=n;col++){
	if(lie[col]==0&&xie1[row+col]==0&&xie2[row-col+10]==0){
		lie[col]=1;
		xie1[row+col]=1;
		xie2[row-col+10]=1;
		dfs(row+1);
		lie[col]=0;
		xie1[row+col]=0;
		xie2[row-col+10]=0;
	}
}

} int main(){

scanf("%d", &n);
dfs(1);
cout<<ret;
return 0;

}

{{ vote && vote.total.up }}