80pts求助
查看原帖
80pts求助
724593
Decepticon楼主2022/10/11 21:49

CodeCode

#include <bits/stdc++.h>
using namespace std;
int n,r,a[25];
bool book[25] = {false};

void dfs(int k){
	if(k > r){
	    for(int i = 1; i <= r-1; i++)
	        if(a[i] > a[i+1]) return;
	    for(int i = 1; i <= r; i++)
	        printf("%3d",a[i]);
	    cout << "\n";
	    return;
	}
	for(int i = 1; i <= n; i++){
	    if(!book[i]){
	       a[k] = i;
	       book[i] = true;
	       dfs(k+1);
	       book[i] = false;
		}
	}
}

int main(){
	cin >> n >> r;
	dfs(1);
	return 0;
}
2022/10/11 21:49
加载中...