标签:
// 输入一组整数,求出最大子序列的和. // 例如:序列: - 2 11 - 4 13 - 5 - 2,则最大子序列和为20。 // 序列: - 6 2 4 - 7 5 3 2 - 1 6 - 9 10 - 2,则最大子序列和为16 #include <stdio.h> int Max_Son(int *p, int len) { int Max_Sum = 0; int i, j; for (i = 0; i < len; ++i) { int sum = 0; for (j = i; j < len; ++j) { sum = sum + p[j]; if (sum > Max_Sum) { Max_Sum = sum; } } } return Max_Sum; } int main() { int arr[] = { -2, 11, -4, 13, -5, -2 }; int array[] = { -6, 2, 4, -7, 5, 3, 2, -1, 6, -9, 10, -2 }; int len = sizeof(arr) / sizeof(arr[0]); int lena = sizeof(array) / sizeof(array[0]); printf("%d\n", Max_Son(arr, len));//20 printf("%d\n", Max_Son(array, lena));//16 return 0; } <img src="http://img.blog.csdn.net/20150706204700829?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/zhaoyaqian552/article/details/46778937