Pagini recente » Cod sursa (job #2905079) | Cod sursa (job #3213380) | Cod sursa (job #2316771) | Cod sursa (job #730614) | Cod sursa (job #554088)
Cod sursa(job #554088)
#include <fstream>
#include <cmath>
using namespace std;
//Subsir de suma maxima
unsigned long int n;
unsigned long int ib = 0;
unsigned long int ie = 0;
long int sum = (long int)-pow(2.00, 31);
long int nr[6000000] = {0};
long int x;
long int minim = 0;
long int imin = 0;
int main()
{
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n;
fin >> nr[0];
for(int i=1; i<n; i++)
{
fin >> x;
nr[i] = nr[i-1] + x;
}
for(int i=0; i<n; i++)
{
if(nr[i]-minim > sum)
{
sum = nr[i]-minim;
ib = imin+1;
ie = i;
}
if(nr[i] < minim)
{
minim = nr[i];
imin = i;
}
}
fout << sum << " " << ib+1 << " " << ie+1;
fin.close();
fout.close();
return 0;
}