1 solutions

  • 1
    @ 2025-8-18 16:49:54
    #include <bits/stdc++.h>
    using namespace std;
    int n,r,a[21],vis[11],m[11];
    void dfs(int x,int dep);
    int main(){
    	scanf("%d%d",&n,&r);
    	for(int i = 1;i<=n;i++)scanf("%d",&a[i]);
    	sort(a+1,a+n+1);
    	dfs(1,1);
    	return 0;
    }
    void dfs(int x,int dep){
    	if(x>r){
    		for(int i = 1;i<=r;i++)printf("%d ",m[i]);
    		printf("\n");
    		return;
    	}
    	for(int i = dep;i<=n;i++){
    		if(!vis[i]){
    			vis[i] = 1;
    			m[x] = a[i];
    			dfs(x+1,i+1);
    			vis[i] = 0;
    		}
    	}
    }
    

    Information

    ID
    716
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    8
    Tags
    (None)
    # Submissions
    21
    Accepted
    5
    Uploaded By