#include <iostream>
using namespace std;
#include <vector>
#include <algorithm>
int main() {
vector<int> arry = { 1, -3, 9, 10, -2, 3, -6, 5 };
int sum = 0;
int maxSum = INT_MIN;
int start = 0,end=0;
for (int i = 0; i < arry.size(); i++) {
sum += arry[i];
if (sum > maxSum) {
maxSum = sum;
end = i;
}
if (sum < 0) {
sum = 0;
start = i + 1;
}
}
cout << "[";
for (start; start <= end; start++) {
cout << arry[start] << ",";
}
cout << "]"<<endl;
cout << maxSum << endl;
system("pause");
return 0;
}
和最大的子串
最新推荐文章于 2022-07-07 00:34:28 发布