1 solutions

  • 1
    @ 2025-3-28 20:39:19

    好久没出题解了

    #include<bits/stdc++.h>
    using namespace std;
    int n,m,a[30];
    void dfs(int dep,int start);
    int main(){
    	scanf("%d%d",&n,&m);
    	dfs(1,1);
    	return 0;
    }
    void dfs(int dep,int start){
    	if(dep>m){
    		if(dep == m+1){
    			for(int i = 1;i<=m;i++)printf("%d ",a[i]);
    			printf("\n");
    		}
    		return;
    	}
    	for(int i = start;i<=n;i++){
    		a[dep] = i;
    		dfs(dep+1,i+1);
    		a[dep] = 0;
    	}
    }
    
    • 1

    Information

    ID
    721
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    9
    Tags
    (None)
    # Submissions
    13
    Accepted
    3
    Uploaded By