Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 一种函数,返回整数数组中的可能数_C - Fatal编程技术网

C 一种函数,返回整数数组中的可能数

C 一种函数,返回整数数组中的可能数,c,C,该函数接受一个整数数组、它的长度以及两个整数N1和N2 它应该返回一个整数,它描述了可以对数组的N1个元素求和以获得等于N2的总和的方式。 如何实现此函数?使用递归。例如,模糊地类似于: int findCount(int *array, int length, int N1, int N2) { int count = 0; if(N1 == 1) { for(int i = 0; i < length; i++) { if(array[

该函数接受一个整数数组、它的长度以及两个整数N1和N2 它应该返回一个整数,它描述了可以对数组的N1个元素求和以获得等于N2的总和的方式。
如何实现此函数?

使用递归。例如,模糊地类似于:

int findCount(int *array, int length, int N1, int N2) {
   int count = 0;

   if(N1 == 1) {
       for(int i = 0; i < length; i++) {
           if(array[i] == N2) {
               count++;
           }
       }
   } else {
       for(int i = 0; i < length; i++) {
           count += findCount(&array[i+1], length-i-1, N1 - 1, N2 - array[i]);
       }
   }
   return count;
}
int findCount(int*数组,int长度,int N1,int N2){
整数计数=0;
如果(N1==1){
for(int i=0;i

注意:如果数组不能包含零或负数,您可以使用
If(array[i]

欢迎来到SO。请拿着这本书读一读。你需要在这里表现出一些努力。你试过用蛮力强迫它吗?这是O(n选择k),但也是最简单的开始方式。