提交时间:2024-03-15 18:30:20

运行 ID: 138344

#include<bits/stdc++.h> using namespace std; int n,k; void dfs(int u,int sum,int s){ if(sum+(n-u)<k) return; if(sum==k){ for(int i=0;i<n;i++){ if(s>>i&1){ cout<<i+1; } } cout<<endl; return; } if(u==n) return; dfs(u+1,sum+1,s|1<<u); dfs(u+1,sum,s); } int main(){ cin>>n>>k; dfs(0,0,0); return 0; }