Cod sursa(job #1806343)

Utilizator ionanghelinaIonut Anghelina ionanghelina Data 15 noiembrie 2016 10:04:06
Problema Branza Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<bits/stdc++.h>
#define maxN 100005
using namespace std;
int n,s,t,i;
int cost[maxN],v[maxN],j;
long long sol;
int main()
{
    freopen("branza.in","r",stdin);
    freopen("branza.out","w",stdout);
    scanf("%d%d%d",&n,&s,&t);
    for(int i=1;i<=n;i++)
    {
        scanf("%d%d",&cost[i],&v[i]);
    }
    i=1;
    sol=1LL*cost[i]*v[i];
    while(i<=n)
    {
        j=i+1;
        while(j<=n && ((cost[i]*v[j]+s*(j-i)*v[j])<cost[j]*v[j]))
        {
            sol=sol+1LL*(cost[i]*v[j]+s*(j-i)*v[j]);
            j++;
        }
        if(j<=n) sol=sol+1LL*cost[j]*v[j];
        i=j;
    }
    printf("%lld\n",sol);
    return 0;
}