zoukankan      html  css  js  c++  java
  • 全组和问题

     1 #include <iostream>
     2 #include <string>
     3 #include <vector>
     4 #include <queue>
     5 #include <algorithm>
     6 #include <cstdio>
     7 using namespace std;
     8 
     9 #define MAX_N 10
    10 int n; //共n 个数
    11 int rcd[MAX_N]; // 记录每个位置填的数
    12 int num[MAX_N]; // 存放输入的n 个数
    13 int usd[MAX_N];
    14 void full_combination(int l, int p) {
    15     int i;
    16     for (i = 0; i < l; i++) { //每次进入递归函数都输出
    17         printf("%d", rcd[i]);
    18         if (i < l - 1)
    19             printf(" ");
    20     }
    21     printf("\n");
    22     for (i = p; i < n; i++) { // 循环同样从p 开始,但结束条件变为i>=n
    23         rcd[l] = num[i]; // 在l 位置放上该数
    24         full_combination(l + 1, i + 1); //填下一个位置
    25     }
    26 }
    27 int read_data() {
    28     int i;
    29     n = 3;
    30     for (i = 0; i < n; i++) {
    31         num[i] = i;
    32         usd[i] = 3;
    33     }
    34     return 1;
    35 }
    36 int main() {
    37     read_data();
    38     full_combination(0, 0);
    39     return 0;
    40 }

    不重复的全组和

     1 #include <iostream>
     2 #include <string>
     3 #include <vector>
     4 #include <queue>
     5 #include <algorithm>
     6 #include <cstdio>
     7 using namespace std;
     8 
     9 #define MAX_N 10
    10 int n, m; //输入n 个数,其中本质不同的有m 个
    11 int rcd[MAX_N]; // 记录每个位置填的数
    12 int used[MAX_N]; // 标记m 个数可以使用的次数
    13 int num[MAX_N]; // 存放输入中本质不同的m 个数
    14 void unrepeat_combination(int l, int p) {
    15     int i;
    16     for (i = 0; i < l; i++) { //每次都输出
    17         printf("%d", rcd[i]);
    18         if (i < l - 1)
    19             printf(" ");
    20     }
    21     printf("\n");
    22     for (i=p; i<m; i++) //循环依旧从p 开始,枚举剩下的本质不同的数
    23     if (used[i] > 0) { // 若还可以用, 则可用次数减
    24         used[i]--;
    25         rcd[l] = num[i]; //在l 位置放上该数
    26         unrepeat_combination(l + 1, i); //填下一个位置
    27         used[i]++; //可用次数恢复
    28     }
    29 }
    30 int read_data() {
    31     int i;
    32     n = 3;
    33     m=3;
    34     for (i = 0; i < n; i++) {
    35         num[i] = i;
    36         used[i] = i+1;
    37     }
    38 
    39     return 1;
    40 }
    41 int main() {
    42     read_data();
    43     unrepeat_combination(0,0);
    44     return 0;
    45 }
  • 相关阅读:
    Windows 8 常用快捷键
    An Simple Method for Sparse Matrix Optimization by GPU
    Loser’s “Bruteforced Cholesky Factorization for Sparse Matrix on CUDA”
    如何禁用CentOS6/RHEL6中的Nouveau驱动/How to Disable Nouveau Driver on CentOS6/RHEL6 before install NVIDIA Driver
    Car under Physical Sky
    Alembic for Mudbox
    Hair
    耳放一块
    I Like Red Hair, Definitely.
    Note for the Implemention of EnergyConserved Marschner Hair Reflectance Model
  • 原文地址:https://www.cnblogs.com/kakamilan/p/2622856.html
Copyright © 2011-2022 走看看