Pagini recente » Cod sursa (job #3183911) | Cod sursa (job #1457687) | Cod sursa (job #747823) | Cod sursa (job #540405) | Cod sursa (job #634986)
Cod sursa(job #634986)
#include <stdio.h>
#include<fstream>
using namespace std;
int main()
{
int i,x,n;
int best_sum,actual_sum,best_start=0,best_finish=0,actual_start=0;
ifstream f("ssm.in");
ofstream g("ssm.out");
//freopen("ssm.in","r",stdin);
//freopen("ssm.out","w",stdout);
//scanf("%d",&n);
f>>n;
//initialize the sums
//scanf("%d",&x);
f>>x;
actual_sum = x;
best_sum = x;
for (i=1;i<n;i++)
{
//scanf("%d",&x);
f>>x;
if ((actual_sum + x)>x)//have a better sum
{
actual_sum+=x;
}
else//reset the sum
{
actual_sum = x;
actual_start = i;
}
if (actual_sum > best_sum)
{
best_sum = actual_sum;
best_start = actual_start;
best_finish = i;
}
}
//printf("%d %d %d\n",best_sum,best_start+1,best_finish+1);
g<<best_sum<<" "<<best_start+1<<" "<<best_finish+1<<"\n";
return 0;
}