Pagini recente » Istoria paginii utilizator/nicolas_visoianu | Istoria paginii utilizator/tudormihaescu | Istoria paginii utilizator/johanna | Monitorul de evaluare | Cod sursa (job #2001943)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
const int NMAX=6000000;
int v[NMAX+5];
int main()
{
int n,i,sc,smax,isc,ismax,sfmax;
f>>n;
for(i=1; i<=n; i++)
f>>v[i];
sc=smax=v[1];
isc=ismax=sfmax=1;
for(i=2; i<=n; i++)
{
if(sc+v[i]<v[i])
{
sc=v[i];
isc=i;
}
else
sc=sc+v[i];
if(sc>smax)
{
smax=sc;
ismax=isc;
sfmax=i;
}
}
g<<smax<<" "<<ismax<<" "<<sfmax<<'\n';
return 0;
}