Cod sursa(job #2863088)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 6 martie 2022 12:33:27
Problema Cuburi2 Scor 50
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <bits/stdc++.h>

using namespace std;

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

const long long DIM = 250015;

long long h[DIM], lft[DIM], rgt[DIM];
long long n, q, sum;

signed main (){
    ios_base::sync_with_stdio(false);
    fin.tie(nullptr);
    fout.tie(nullptr);

    fin>>n>>q;
    for(long long i=1; i<=n; i++)
        fin>>h[i];

    long long st, dr, sol, minn;
    while(q--){
        fin>>st>>dr;


        lft[st] = 0;
        sum = h[st];
        for(long long i=st+1; i<=dr; i++){
            lft[i] = lft[i-1] + sum;
            sum += h[i];
        }

        rgt[dr] = 0;
        sum = h[dr];
        for(long long i=dr-1; i>=st; i--){
            rgt[i] = rgt[i+1] + sum;
            sum += h[i];
        }

        minn = (1LL << 60);
        sol = 0;
        for(long long i=st; i<=dr; i++){
            if(minn > lft[i] + rgt[i]){
                minn = lft[i] + rgt[i];
                sol = i;
            }
        }
        fout<<sol<<" "<<minn<<"\n";
    }
    return 0;
}
/**


**/