求问大佬,到底哪有问题,只有30分
查看原帖
求问大佬,到底哪有问题,只有30分
838953
JXY04315611楼主2023/2/10 12:20
#include <iostream>
#include <cstdio>

using namespace std;
int n,r,a[21],i;
bool b[21]={0};
void print(){
	for(int i = 1;i <= r;i++)
		printf("%3d",a[i]); 
	printf("\n"); 
}
void dfs(int u){
    if(u>r){
        print();
        return;
    }for(i=1;i<=n;i++){
        if(!b[i]&&i>a[u-1]||u==1){
        a[u]=i;
        b[i]=true;
        dfs(u+1);
        b[i]=false;
        }
    }return ;
}
int main(){
    scanf("%d%d",&n,&r);
    dfs(1);
    return 0;
}
2023/2/10 12:20
加载中...