2 xileo XILEO 于 2016.03.30 14:33 提问

最大子数组的相关问题

Sample Input:
10
-10 1 2 3 4 -5 -23 3 7 -21
Sample Output:
10 1 4
就是求最大字数组的和还有最大子数组的开始和结束的数字
为什么我的代码在动态规划基础上改的总是不能ac呢?求解啊
#include
#include
#include
#include
#include
#include
using namespace std;

int main()
{
int N;
int a[100003],aa[100001];
int begin, end;
int sum = 0, b = -1;
int f = 0;
cin >> N;
for (int i = 0; i {
cin >> a[i]; aa[i] = a[i];
}
sort(aa, aa + N);
if (aa[N - 1] <= 0)
{
cout << sum << " " << aa[N - 1] << " " << aa[N - 1] << endl;
system("pause");
return 0;
}
for (int i = 0; i {
if (b>=0)
{
b += a[i];
//if(!f) begin=i;
f++;
}
else b = a[i], f = 0;
if (b>sum) sum = b, begin = i - f, end = i;
}
cout << sum << " " << a[begin] << " " << a[end] << endl;
system("pause");
return 0;
}

1个回答

CSDNXIAON
CSDNXIAON   2016.03.30 14:43

最大子数组问题
最大子数组问题
最大子数组问题
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!