Pagini recente » Cod sursa (job #2745386) | Cod sursa (job #2938924) | Cod sursa (job #1875291) | Cod sursa (job #1147102) | Cod sursa (job #2890982)
#include<bits/stdc++.h>
using namespace std;
int n;
long long sol = LONG_MIN;
long long mp,sp;
int main() {
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n; long long indexFinal,indexInitial,finLeft,stanga;
sp = 0;
//mp[0] = 0;
mp = 0; for (long long i = 1; i <= n; i++) {
long long x;
fin >> x; //citim elementul curent
sp += x;
long long val = sp - mp; if(val > sol)
{
indexFinal = i;
stanga = indexInitial;
}
sol = max(sol, val); if(sp < mp )
{
indexInitial = i+1;
//stanga = i+1;
} mp = min(mp, sp);
} fout << sol << " "<<stanga<<" "<<indexFinal;
}