Mai intai trebuie sa te autentifici.
Cod sursa(job #477223)
Utilizator | Data | 13 august 2010 20:54:43 | |
---|---|---|---|
Problema | Lupul Urias si Rau | Scor | 0 |
Compilator | cpp | Status | done |
Runda | ziua_burlacilor-ce_mai_zi... | Marime | 0.8 kb |
using namespace std;
#include<iostream>
#include<fstream>
#include<queue>
#define Nmax 100005
#define D first
#define A second
ofstream fout("lupu.out");
priority_queue<unsigned int> q;
pair<unsigned int,unsigned int> v[Nmax];
unsigned int N,X,L;
unsigned long long sum;
void solve()
{unsigned int i,lim=1;
for(i=X%L;i<=X;i+=L)
{
while(lim<=N&&v[lim].D<=i)
{q.push(v[lim].A);
lim++;
}
if(!q.empty)
{sum+=q.top();
q.pop();
}
}
fout<<sum<<"\n";
}
void cit()
{unsigned int i;
ifstream fin("lupu.in");
fin>>N>>X>>L;
for(i=1;i<=N;i++)
{fin>>v[i].D>>v[i].A;
}
sort(v+1,v+N+1);
}
int main()
{
cit();
solve();
fout.close();
return 0;
}