P1219输出正确 为什么WA???
查看原帖
P1219输出正确 为什么WA???
1058935
GMU_DVwangpenghui楼主2024/11/18 19:40
#include <iostream>
using namespace std;
const int N = 20;

int n, ans = 0, a1[N], a2[N], a3[N], b[N];

void dfs(int x)
{
	if(x > n)
	{
		ans ++;
		if(ans <= 3)
		{
			for(int i = 1;i <= n;i ++)
			{
				cout << b[i] << ' ';
			}
			cout << endl;
		}
		return;
	}
	
	for(int i = 1;i <= n;i ++)
	{
		if(a1[i] == 0 && a2[x + i] == 0 && a3[x - i + 15] == 0)
		{
			b[x] = i;
			a1[i] = 1;
			a2[x + i] = 1;
			a3[x - i + 15] = 1;
			dfs(x + 1);
			a1[i] = 0;
			a2[x + i] = 0;
			a3[x - i + 15] = 0;
		}
	}
}

int main()
{
	cin >> n;
	dfs(1);
	cout << ans << endl;
	return 0;
}

QAQ为什么为什么为什么

2024/11/18 19:40
加载中...