Cod sursa(job #1143113)

Utilizator alevasluialeHuhurez Marius alevasluiale Data 14 martie 2014 19:29:02
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <cstdio>

using namespace std;
int lis[50010][3];
int main()
{
    freopen("secv2.in","r",stdin);
    freopen("secv2.out","w",stdout);
    int n,i,max=0,a,b=0,k,p;
    a=1;
    scanf("%d%d",&n,&p);
    scanf("%d",&lis[1][0]);
    lis[1][1]=1;
    lis[1][2]=1;
    max=lis[0][0];
    b=1;
    for(i=2;i<=n;i++)
    {
        scanf("%d",&k);
        if(lis[i-1][0]+k<k)
        {
            lis[i][0]=k;
            lis[i][1]=i;
            lis[i][2]=1;
        }
        else
        {
            lis[i][0]=lis[i-1][0]+k;
            lis[i][1]=lis[i-1][1];
            lis[i][2]=lis[i-1][2]+1;
        }
        if(lis[i][0]>max&&lis[i][2]>=p)
        {
            max=lis[i][0];
            a=lis[i][1];
            b=i;
        }
    }
    printf("%d %d %d",a,b,max);
}