Cod sursa(job #2399835)

Utilizator RazvanPanaiteRazvan Panaite RazvanPanaite Data 8 aprilie 2019 09:11:09
Problema Lupul Urias si Rau Scor 88
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <bits/stdc++.h>

using namespace std;

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

vector <vector <long long int> > V;
priority_queue <long long int> pq;

long long int x,l,ans;

void citire();

int main(){
    long long int rms=0,k,i,j;
    citire();
    k=x%l;
    while(k<=x){
          for(i=rms;i<=k;i++)
              for(j=0;j<V[i].size();j++)
                  pq.push(V[i][j]);
          rms=k+1;
          k+=l;
          if(pq.size()){
             ans+=pq.top();
             pq.pop();
          }
    }
    fout<<ans<<'\n';
}

void citire(){
    long long int n,i,x1,y1;
    fin>>n>>x>>l;
    V.resize(x+3);
    for(i=1;i<=n;i++){
        fin>>x1>>y1;
        if(x1<=x)
           V[x1].push_back(y1);
    }
}