Pagini recente » Cod sursa (job #30101) | Cod sursa (job #817461) | Cod sursa (job #2725044) | Cod sursa (job #1869720) | Cod sursa (job #602847)
Cod sursa(job #602847)
#include <fstream>
#include <stdio.h>
using namespace std;
int a[50001],b[50001],c[50001],n,k;
char buf1[50001];
int main(void){
int i,j,max,pozmax,lmax;
bool bo=false;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
fin.rdbuf()->pubsetbuf(buf1,sizeof(buf1));
fin>>n>>k;
for(i=1;i<=n;++i)fin>>a[i]; fin.close();
b[n]=a[n]; c[n]=1;
for(i=n-1;i>=1;--i)
if(a[i]+b[i+1]>=a[i])
{
b[i]=a[i]+b[i+1];
c[i]=c[i+1]+1;
}
else
{
b[i]=a[i];
c[i]=1;
}
max=-25001; pozmax=0; lmax=0;
for(i=n;i>=1;--i)
if(b[i]>max)
if(c[i]>=lmax)
{
max=b[i]; pozmax=i; lmax=c[i];
}
fout<<pozmax<<" "<<pozmax+lmax-1<<" "<<max;
fout.close();
return 0;
}