Cod sursa(job #2009042)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 8 august 2017 14:55:22
Problema Branza Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("branza.in");
ofstream g("branza.out");
long long n,s,t;
long long sol=0;
struct branza
{
    long long p,nr;
};
branza v[100002];
int main()
{
    f>>n>>s>>t;
    for(int i=1;i<=n;++i)
        f>>v[i].p>>v[i].nr;
    sol=v[1].p*v[1].nr;
    long long b=1;
    long long e=1;
    long long str=1;
    while(e<=n)
    {
        if(v[b].p*v[e+1].nr+str*v[e+1].nr*s<=v[e+1].nr*v[e+1].p)
            ++e,sol+=1ll*v[b].p*v[e].nr+1ll*str*v[e].nr*s,++str;
        else
            ++e,b=e,sol+=1ll*v[b].p*v[b].nr,str=1;
        if(e-b>=t)
            ++b,--str;
    }
    g<<sol<<'\n';
    return 0;
}