Pagini recente » Borderou de evaluare (job #3232198) | Cod sursa (job #1891222) | Cod sursa (job #2200273) | Cod sursa (job #799655) | Cod sursa (job #1426193)
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
/*
int sum[101][101],a[101][101],n,m,summax;
int main()// O(n^4)
{
int i,j,i1,j1,suma;
fin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
fin>>a[i][j];
sum[i][j]=a[i][j]+sum[i][j-1]+sum[i-1][j]- sum[i-1][j-1];
}
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
for(i1=i+1;i1<=n;i1++)
for(j1=j+1;j1<=m;j1++)
{
suma=sum[i1][j1]-sum[i-1][j1]-sum[i1][j-1]+sum[i-1][j-1];
if(suma>summax)
summax=suma;
}
}
fout<<summax<<'\n';
return 0;
}*/
int main()
{
int n,x,s,smax,i,pmax,umax,p,u;
pmax=umax=p=u=1;
fin>>n;
fin>>x;
s=x;
smax=x;
if(s<0)
s=0,p=u=2;
for(i=2;i<=n;i++)
{
fin>>x;
s=s+x;
u++;
if(s>smax)
{smax=s;pmax=p;umax=u;}
if(s<0)
{s=0;p=i+1;u=i;}
}
fout<<smax<<' '<<pmax<<' '<<umax<<'\n';
return 0;
}