Cod sursa(job #3326430)
| Utilizator | Data | 28 noiembrie 2025 20:54:05 | |
|---|---|---|---|
| Problema | Lupul Urias si Rau | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <bits/stdc++.h>
#define int long long
using namespace std;
ifstream fin("lupu.in");
ofstream fout("lupu.out");
priority_queue<int> q;
pair<int,int> a[100005];
int n,x,l,ans;
signed main()
{ fin>>n>>x>>l;
for(int i=1;i<=n;i++) fin>>a[i].first>>a[i].second;
sort(a+1,a+n+1);
int j=1;
for(int i=x/l;i>=0;i--){
while(j<=n&&a[j].first+i*l<=x){q.push(a[j].second);j++;}
if(!q.empty()) {ans+=q.top();q.pop();}
}
fout<<ans;
return 0;
}
