Pagini recente » Cod sursa (job #2165527) | Cod sursa (job #2791054) | Cod sursa (job #2115695) | Cod sursa (job #808951) | Cod sursa (job #2909552)
#include<iostream>
#include<stdint.h>
#include<fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int maxSub(int size, int &start, int &end)
{
int a;
f >> a;
int maxim = a, start_c = 0, maxim_curent = a;
for (int i = 1; i < size; i++)
{
f >> a;
if(a > maxim_curent+a){
maxim_curent = a;
start_c = i;
}
else
maxim_curent = maxim_curent+a;
if(maxim < maxim_curent){
maxim = maxim_curent;
start = start_c;
end = i;
}
}
return maxim;
}
int main()
{
int n = 0;
f >> n;
int start = 0;
int end = 0;
int max_sum = maxSub(n, start, end);
g << max_sum << ' ' << start+1 << ' ' << end+1;
return 0;
}