Pagini recente » Cod sursa (job #1940954) | Cod sursa (job #1212250) | Cod sursa (job #887832) | Cod sursa (job #3230041) | Cod sursa (job #1765105)
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
const int NMAX=6000001;
int sum[NMAX],N,maxx=INT_MIN,minn=INT_MAX;
int main()
{
f>>N;
int i,x,p,u,ssm;
for(i=1; i<=N; i++)
{
f>>x;
sum[i]=sum[i-1]+x;
if(maxx<sum[i])
{
maxx=sum[i];
u=i;
}
}
for(i=1; i<u; i++)
if(minn>sum[i])
{
minn=sum[i];
p=i;
}
if(maxx<0)
{
for(i=1; i<=N; i++)
{
int dif=sum[i]-sum[i-1];
if(maxx<dif)
{
maxx=dif;
u=i;
p=i-1;
}
}
}
ssm=sum[u]-sum[p];
g<<ssm<<' '<<p+1<<' '<<u;
return 0;
}