Pagini recente » Cod sursa (job #2616115) | Cod sursa (job #1908413) | Cod sursa (job #1355039) | Cod sursa (job #2083483) | Cod sursa (job #2033618)
#include <iostream>
#include <fstream>
#include <limits>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
void citire(int s[100], int&n)
{
f>>n;
for(int i=1;i<=n;i++)
f>>s[i];
}
void sumepart(int s[100], int n)
{
int i=1,mij,sumi,maxi=INT_MIN,maxj,j=n,sumj,ssm,pi,pj;
mij=(i+j)/2;
while(i<mij)
{
sumi=0;
for(int g=i;g<=mij;g++)
sumi=sumi+s[g];
if(sumi>maxi)
{maxi=sumi; pi=i;}
i++;
}
while(mij+1<j)
{
sumj=0;
for(int g=mij+1;g<=j;g++)
sumj=sumj+s[g];
if(sumj>maxj)
{maxj=sumj; pj=j;}
j--;
}
ssm=maxi+maxj;
g<<ssm<<' '<<pi<<' '<<pj;
}
int main()
{
int s[100],n;
citire(s,n);
sumepart(s,n);
return 0;
}