Cod sursa(job #3357567)
| Utilizator | Data | 11 iunie 2026 16:08:13 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 90 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.62 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,x[6000001],i,pi,pf,a,smax,pim,pfm;
int main()
{
fin>>n;
fin>>a;
x[1]=a;
pi=1;
pf=1;
for(i=2;i<=n;i++)
{
fin>>a;
if(a+x[i-1]>a)
{
pf++;
x[i]=a+x[i-1];
}
else
{
pi=pf=i;
x[i]=a;
}
if(x[i]>smax)
{
smax=x[i];
pim=pi;
pfm=pf;
}
}
fout<<smax<<" "<<pim<<" "<<pfm<<" ";
return 0;
}
