Cod sursa(job #2146695)

Utilizator jitaruandreiJitaru Andrei Catalin jitaruandrei Data 28 februarie 2018 10:00:43
Problema Cuburi2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;

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

long long n, m, i, x, y,k,nr,mi;
long long v[250001];

void mij(int x,int y,int mi)
{
    nr=0;
   for(i=x;i<mi;i++)
    nr+=(mi-i+1)*v[i];
   for(i=mi;i<y;i++)
    nr+=(y-i+1)*v[i];
}

int main()
{
    fin>>n>>m;
    for(i=1;i<=n;i++)
        fin>>v[i];
    for(i=1;i<=m;i++)
    {
        fin>>x>>y;
        mi=(x+y)/2;
        if((x+y)%2==0){mij(x,y,mi);k=nr;}
            else {mij(x,y,mi);k=nr;mij(x,y,mi+1);if(nr<k)mi=nr;
            else mi=k;}
        if((x+y)%2==0)fout<<mi<<" "<<k<<endl;
        else fout<<mi+1<<" "<<k<<endl;
    }
    return 0;
}