4 条题解

  • 0
    @ 2024-6-23 11:30:20
    #include<bits/stdc++.h>
    using namespace std;
    int boxes[25],n,m,numbers[105];
    void dfs(int s){
    	if(s > m){
    		for(int i = 1;i <= m;i++){
    			cout << boxes[i] << " ";
    		}
    		cout << endl;
    		return;
    	}
    	for(int i = boxes[s - 1];i <= n;i++){
    		if(not numbers[i]){
    			numbers[i] = 1;
    			boxes[s] = i;
    			dfs(s + 1);
    			numbers[i] = 0;
    		}
    	}
    }
    int main(){
    	cin >> n >> m;
    	boxes[0] = 1;
    	dfs(1);
    
    }
    

    信息

    ID
    6
    时间
    1000ms
    内存
    128MiB
    难度
    3
    标签
    递交数
    419
    已通过
    241
    上传者