题目中
Y 为参加
N 为不参加
以3为例
先走满,全是N,然后慢慢退,改N为Y就行了
#include <bits/stdc++.h>
using namespace std;
int u,n;
bool mp[11];
void dfs(int u)
{
if(u == n)
{
for(int i = 0; i < n; i++)
if (!mp[i])
cout << "N";
else
cout << "Y";
cout << endl;
return;
}
//由于只有两个选项,就用一个bool来解决
mp[u] = false;
dfs(u+1);
mp[u] = true;
dfs(u+1);
}
int main()
{
cin >> n;
memset(mp,false,sizeof(mp));
dfs(0);
return 0;
}