Pagini recente » Cod sursa (job #803389) | Cod sursa (job #658417) | Cod sursa (job #1496036) | Cod sursa (job #1498624) | Cod sursa (job #2909232)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <climits>
#include <vector>
using namespace std;
int main()
{
int n, bestSum = INT_MIN, sum = 0, start, end, posStart;
vector<int> numbers;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n;
auto aux = 0;
for(auto i = 0; i < n; i++)
{
fin >> aux;
numbers.push_back(aux);
}
for(auto i = 0; i < n; i++)
{
if(sum < 0)
{
sum = numbers[i];
posStart = i;
}
else
sum += numbers[i];
if(bestSum < sum)
{
bestSum = sum;
start = posStart;
end = i;
}
}
fout << bestSum << " " << start + 1 << " " << end + 1;
fin.close();
fout.close();
return 0;
}