和等于total的解答[1]

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 zijinshi 的 blog

(from http://community.csdn.net/expert/topic/3971/3971377.xml?temp=.7857324)

1.从已知数组d的前n个元素中找出部分元素序列之和等于total的元素序列,约定数组的元素都是正整数,且都小于等于total。

解答:这个题可以用递归进行穷举。

假设

实现以上方法的函数为 int gettotal(int *a_piarr,int a_in,int m_itotal,int i_iindex)。

其中

函数返回值为能够得到的个数,

const int *const a_piarr为数组的首地址,

const int a_in为从前n个元素中找,

const int m_itotal为需要找的和,

int a_inowtotal 为目前的和,

int a_iindex 为目前的第index个数值,

int *const a_itmparr存放找到的几个数值的index,

int a_itmpcnt存放目前的a_itmparr中存放的元素个数。

 

int gettotal(const int* const a_piarr,const int a_in,const int a_itotal,int a_inowtotal,int a_iindex,int * const a_itmparr,int a_itmpcnt)

{

    static int iret = 0;

       int i;

    if(a_iindex >= a_in || a_inowtotal > a_itotal)

    {

        return iret;

    }

本文关键:和等于total的解答
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top