一、
全部放在一个函数中完成测试。
二、
三、
四、
#includeusing namespace std; void PrintAll(int a[], int nBegin, int nEnd, int nCount,string szPre){ if(nCount==1) { for(int i=nBegin; i<=nEnd; i++) { cout< < <<" "; } cout<
递归求解
五、
#includeusing namespace std;int MaxSub(int a[],int lenth){ //纯粹的动态规划问题,n长的数组要么由大于0的n-1子数组的和加上最后一个数组成, //要么由于前面的数小于0由最后一个数构成, n-1的子数组同样有这样的结构 int sum=0; int tmp=0; for(int i=0;i sum) sum=tmp; } return sum; }int main(){ int a[]={-2,11,-4,13,-5,-2}; cout<
#includeusing namespace std; int MaxSub(int a[],int lenth){ int dp[6]; int Sum=0; for(int i=0;i<6;i++) dp[i]=a[i]; for(int i=1;i Sum) { Sum=dp[i]; } } cout<
六
七