Cod sursa(job #1042388)
Utilizator | Data | 26 noiembrie 2013 22:51:29 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int n, s[6000001], i, j, x, y, mx;
int main()
{
cin>>n;
for(i=1; i<=n; i++)
{
cin>>s[i];
s[i]+=s[i-1];
if(s[i]<0) s[i]=0;
}
i=1;
while(i<=n)
{
j=i;
while(s[j]>0 && j<=n)
{
if(s[j]>mx)
{
mx=s[j];
x=i;
y=j;
}
j++;
}
i=j+1;
}
cout<<mx<<" "<<x<<" "<<y;
return 0;
}