提交时间:2024-03-09 10:04:05
运行 ID: 136515
#include<iostream> #include<cstdio> using namespace std; bool flag[10]; int m,n,d[10]; void dfs(int k) { int i; if(k==m+1) { for(i=1;i<=m;i++) cout<<d[i]; cout<<endl; return; } for(i=d[k-1];i<=n;i++) if(flag[i]==false) { flag[i]=true; d[k]=i; dfs(k+1); flag[i]=false; } return; } int main() { d[0]=1; int i; cin>>n>>m; if(n==0) return 0; dfs(1); return 0; }