33分求助
  • 板块B3623 枚举排列
  • 楼主oyyhcs
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/8/12 11:41
  • 上次更新2023/11/3 04:18:59
查看原帖
33分求助
775894
oyyhcs楼主2023/8/12 11:41
#include<iostream>
using namespace std;
int n,m;
void dfs(int u,int sum,int state)//sum的意思是输出了几个数 
{
	if(sum+n-u<m)return;
	if(sum==m)
	{
		for(int i=0;i<n;i++)
		{
			if(state>>i&1)cout<<i+1<<" ";
		}
		cout<<endl;
		return ;
	}
	
	dfs(u+1,sum+1,state|1<<u);
	dfs(u+1,sum,state);
	
	
}


int main()
{

	cin>>n>>m;
	dfs(0,0,0);
	
	return 0;
}
2023/8/12 11:41
加载中...