Pagini recente » Cod sursa (job #3217496) | Cod sursa (job #1457989) | Cod sursa (job #1359382) | Cod sursa (job #1127332) | Cod sursa (job #2719317)
#include<iostream>
#include<fstream>
#include<climits>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
#define nrm 6000005
int n;
int sume[nrm];
void citire()
{
fin>>n;
for(int i=1;i<=n;i++)
{
long long x;
fin>>x;
sume[i]=sume[i-1]+x;
}
}
int main ()
{
citire();
int maxim=INT_MIN,minim=INT_MAX,stop,start;
for(int i=1;i<=n;i++)
{
if(maxim<sume[i])
{
maxim=sume[i];
stop=i;
}
}
for(int i=1;i<=stop;i++)
{
if(minim>sume[i])
{
minim=sume[i];
start=i;
}
}
if(maxim-minim>maxim && stop>start)
{
fout<<maxim-minim<<" "<<start+1<<" "<<stop;
}
else
{
fout<<maxim<<1<<" "<<stop;
}
fin.close();
fout.close();
return 0;
}