Pagini recente » Cod sursa (job #1429349) | Cod sursa (job #2756248) | Cod sursa (job #1077457) | Cod sursa (job #1887063) | Cod sursa (job #1360104)
#include <fstream>
using namespace std;
int main()
{int sum[259990],a[259990], min,i,bestSum,N,p2,j,p1;
ifstream f("ssm.in");
ofstream g("ssm.out");
f>>N;f>>a[0];bestSum=a[0];
for(i=1;i<N;i++){f>>a[i];if(a[i]<bestSum)bestSum=a[i];}
sum[0] = 0;
for (i = 1; i <N; i++) sum[i] = a[i] + sum[i-1];
min = sum[0];
for (i = 1; i < N; i++)
{ p1= sum[i] - min;
if (min > sum[i]) min = sum[i];
if (bestSum < p1)
bestSum = p1;
}
p1=p2=3000000;
for (i = 0; i < N-1; i++)
for (j = i+1; j < N; j++)
if(sum[j]-sum[i-1]==bestSum)
if(p1>i+1)
{p1=i+1;p2=j+1;break;}
else if(p1==i+1)
if(p2<j+1)
{p1=i+1;p2=j+1;break;}
else if(j-1+1<p2-p1+1)
{p1=i+1;p2=j+1;break;}
g<<bestSum<<" "<<p1<<" "<<p2;
return 0;
}