666
  • 板块B3623 枚举排列
  • 楼主bylgd
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/10/18 21:48
  • 上次更新2023/11/2 12:57:26
查看原帖
666
920843
bylgd楼主2023/10/18 21:48

用全排列板子改一下输出得67pts

#include <iostream>
#include <cstring>
#include <algorithm>
#include <vector>
#define int long long
using namespace std;
int n, k;
int a[100010];
bool vis[100010];
void dfs(int u)
{
	if(u == k + 1)
	{
		for(int i = 1; i <= n; i ++ )
		    cout << a[i] << ' ';
		puts("");
	}
	for(int i = 1; i <= n; i ++ )
	{
		if(!vis[i])
		{
			a[u] = i;
			vis[i] = 1;
			dfs(u + 1);
			vis[i] = 0;
		}
	}
}
signed main()
{
    cin >> n >> k;
    dfs(1);
    return 0;
}

2023/10/18 21:48
加载中...