社区讨论
what(诡异的改法)
B3621枚举元组参与者 3已保存回复 11
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 11 条
- 当前快照
- 1 份
- 快照标识符
- @m4iio86i
- 此快照首次捕获于
- 2024/12/10 21:48 去年
- 此快照最后确认于
- 2025/11/04 23:22 4 个月前
改之前,我的代码是这样的
CPP#include<bits/stdc++.h>
using namespace std;
int n,k;
int check[15],ans[15];
void dfs(int pos)
{
if (pos==k+1)
{
for(int i=1;i<=k;i++)
{
cout << ans[i]<<" ";
}
cout << endl;
return;
}
for(int i = 1; i <= n; i ++)
{
check[i]=1;
ans[pos]=i;
dfs(pos + 1);
check[i]=0;
}
}
int main()
{
cin >> n>>k;
dfs(1);
return 0;
}
1:ac 2:wa
但是改成这样
CPP#include<bits/stdc++.h>
using namespace std;
int n,k;
int check[15],ans[15];
void dfs(int pos)
{
if (pos==k+1)
{
for(int i=1;i<=k;i++)
{
cout << ans[i]<<" ";
}
cout << endl;
return;
}
for(int i = 1; i <= n; i ++)
{
check[i]=1;
ans[pos]=i;
dfs(pos + 1);
check[i]=0;
}
}
int main()
{
cin >> k>>n;
dfs(1);
return 0;
}
AC了
???大佬可以解释一下吗
回复
共 11 条回复,欢迎继续交流。
正在加载回复...