#include<bits/stdc++.h>
using namespace std;
int used[20],a[100],m,n,k;
void print()
{
for(int j = 1; j <= m; j++)cout<<" "<<a[j]<<" ";
cout<<endl;
}
void f(int dep)
{
int i;
if(dep > m)
{
print();
return;
}
for(i = 1; i<=m; i++)
{
if(used[i] > 0)
{
a[dep] = i;
used[i]--;
f(dep + 1);
used[i]++;
}
}
}
int main()
{
cin>>n>>m;
for(int i = 1; i <= n; i++)
{
used[i]++;
}
f(1);
return 0;
}
改了好多遍都没效果
但总算对了一个 自我感觉良好