Cod sursa(job #2731676)

Utilizator redikusTiganus Alexandru redikus Data 28 martie 2021 01:17:55
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <queue>
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("branza.in");
ofstream cout("branza.out");

int main(){

    int n, s, t, i, x, y;
    vector<pair<int, int>> a;
    vector<priority_queue<int>> b;
    priority_queue<int> aux;
    cin>>n>>s>>t;
    b.assign(n, aux);
    for(i=0;i<n;i++){
        cin>>x>>y;
        a.push_back(pair<int,int>(x,y));
        b[i].push(-x*y);
        int j=-1;
        while(i+j>0 && -j<t){
            if(a[i].first*a[i].second>=a[i+j].first*a[i].second+a[i].second*(-j)*s){
                b[i].push(-(a[i+j].first*a[i].second+a[i].second*(-j)*s));
            }
            j--;
        }
    }
    int v=0;
    for(auto i: b){
        cout<<i.top()<<" ";
        v+=i.top();
    }
    cout<<-v;

}