Cod sursa(job #2708616)
| Utilizator | Data | 19 februarie 2021 09:26:15 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <iostream>
#include <fstream>
std::ifstream cin("ssm.in");
std::ofstream cout("ssm.out");
typedef long long ll;
const int inf = 1e17;
ll n, sc = -inf, x, st, dr, ansst, ansdr, scmax = -inf;
int main()
{
cin >> n;
for (dr = 0; dr < n; dr++)
{
std::cin >> x;
if (sc >= 0)
{
sc += x;
}
else
{
sc = x;
st = dr;
}
if (sc > scmax)
{
scmax = sc;
ansst = st;
ansdr = dr;
}
}
cout << scmax << " " << ansst << " " << ansdr;
cin.close();
cout.close();
}
