Cod sursa(job #2710640)
| Utilizator | Data | 22 februarie 2021 20:08:59 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include<iostream>
#include<fstream>
#include<string.h>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
long long maxi = -0x3f3f3f3f;
int beginx, endx,id;
int main()
{
long long sum = 0;
int x;
int n;
f >> n;
id=beginx = endx = 1;
for (int i = 1; i <= n; i++)
{
f >> x;
sum += x;
if (sum > maxi)
maxi = sum,endx=i,beginx=id;
if (sum < 0)
sum = 0, id = i + 1;
}
g << maxi << " " << beginx << " " << endx;;
}