#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<(int)n;i++)
typedef long long ll;
int main(void){
   int n;
   ll d,a;cin>>n>>d>>a;
   vector<pair<ll,ll>> p(n);
   rep(i,n)cin>>p[i].first>>p[i].second;
   sort(p.begin(),p.end());
   d*=2;
   ll tot=0;
   queue<pair<ll,ll>> q;
   ll ans=0;
   rep(i,n){
       ll x=p[i].first;
       ll h=p[i].second;
       while(q.size()&&q.front().first<x){
           tot-=q.front().second;
           q.pop();
       }
       h-=tot;
       if(h>0){
           ll num=(h+a-1)/a;
           ans+=num;
           ll damage=num*a;
           tot+=damage;
           q.emplace(x+d, damage);
       }
   }
   cout<<ans<<endl;
}