Cod sursa(job #1162258)

Utilizator DysKodeTurturica Razvan DysKode Data 31 martie 2014 18:51:34
Problema Secventa 2 Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.3 kb
#include <fstream>
using namespace std;    //Rezolvare in ON^2

ifstream fin("secv2.in");
ofstream fout("secv2.out");

int v[50010],s[50010],a,b,poz1,poz2,x,y,n,k,maxi,tot,toti;

void citirea()
{
    int i,j;
    fin>>n>>k;
    for(i=1 ; i<=k ; ++i)
    {
        fin>>v[i];
        s[i]=v[i]+s[i-1];
    }
    for(i=k+1 ; i<=n ; ++i)
    {
        fin>>v[i];
        s[i]=v[i]+s[i-1];
        for(j=i-k ; j>=1 ; --j)
        {
            if(s[i]-s[j]>maxi)
            {
                maxi=s[i]-s[j];
                poz1=j+1;
                poz2=i;
            }
        }
    }
}

/*
void rezolvarea()
{
    int i,j;
    for(i=1 ; i<toti-k ; ++i)
    {
        for(j=i+k ; j<=n ; ++j)
        {
            if(s[j]-s[i-1]>=maxi)
            {
                maxi=s[j]-s[i-1];
                poz1=i;
                poz2=j;
            }
        }
    }
    for(i=toti-k+1 ; i<n-k ; ++i)
    {
        for(j=i+k ; j<=n ; ++j)
        {
            if(s[j]-s[i-1]>=maxi)
            {
                maxi=s[j]-s[i-1];
                poz1=i;
                poz2=j;
            }
        }
    }
}
*/

int main()
{
    maxi=1<<(31);
    citirea();
    //rezolvarea();
    fout<<poz1<<" "<<poz2<<" "<<maxi;

fin.close();
fout.close();
return 0;
}