提交时间:2024-03-09 14:53:08

运行 ID: 136736

#include<bits/stdc++.h> using namespace std; int n,m; int a[10001] = {0} , b[10001] = {0}; int print(); int search(int k) { int i; for(i = 1 ; i <= n ; i++){ if(!b[i]){ if(k!=1 && a[k-1] > i) continue; a[k] = i; b[i] = 1; if(k == m) print(); else search(k+1); b[i] = 0; } } } int main() { cin>>n>>m; search(1); return 0; } int print() { for(int i=1;i<=m;i++) cout<<a[i]; cout<<endl; }