zoukankan      html  css  js  c++  java
  • 一般组合

    输入n个数,从中选出m个数可构成集合,输出所有这样的集合

    输入

    4 3

    1 2 3 4

    输出

    1 2 3

    1 2 4

    1 3 4

    2 3 4

    #include<cstdio>
    #include<cstring>
    using namespace std;
    const int maxn = 100;
    
    int n,m;
    int rcd[maxn],num[maxn],vis[maxn];
    
    int read_input(){
    
       if(scanf("%d %d",&n,&m)==EOF)
            return 0;
        for(int i=0;i<n;i++)
            scanf("%d",&num[i]);
        return 1;
    }
    
    void select_combination(int l,int p){
        if(l==m){
            for(int i=0;i<m;i++){
                printf("%d",rcd[i]);
            if(i<m-1)
                printf(" ");
            }
            printf("
    ");
            return ;
        }
        for(int i=p;i<n;i++){
            rcd[l]=num[i];
            select_combination(l+1,i+1);
    
        }
    }
    int main() {
        while(read_input()){
    
            select_combination(0,0);
    
        }
    
        return 0;
    }
    

      

    Knowing others is intelligence; Knowing yourself is true wisdom
  • 相关阅读:
    TestNG
    K近邻算法
    Python解决乱码问题
    Log4J 配置
    多线程死锁
    hadooplzo安装出错的解决方法
    B树
    设计模式
    整数序列化
    Maven
  • 原文地址:https://www.cnblogs.com/huicpc0212/p/4185981.html
Copyright © 2011-2022 走看看