#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
    int n,m,q;cin>>n>>m>>q;
    int a[n+1][n+1]{};
    for (int i=0;i<m;i++) {
        int b,c;cin>>b>>c;
        a[b][c]++;
    }
    for (int i=1;i<=n;i++)
        for (int j=1;j<=n;j++)
            a[i][j]+=a[i][j-1];
    for (int i=1;i<=n;i++)
        for (int j=1;j<=n;j++)
            a[i][j]+=a[i-1][j];
    for (int i=0;i<q;i++) {
        int b,c;cin>>b>>c;
        cout<<a[c][c]-a[c][b-1]-a[b-1][c]+a[b-1][b-1]<<endl;
    }
    return 0;
}
#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef long double ld;
typedef vector<int> vi;
typedef vector<double> vd;
typedef vector<ll> vl;
typedef vector<vi> vvi;
typedef vector<vl> vvl;
typedef pair<int,int> pii;
typedef pair<double, double> pdd;
typedef pair<ll, ll> pll;
typedef vector<pii> vii;
typedef vector<pll> vll;
typedef vector<pdd> vdd;

#define rep(i, n) for(int i = 0; i < (int)(n); i++)
#define mem(a,b) memset(a, b, sizeof(a) )
#define all(x) (x).begin(),(x).end()
#define INF 1000000000000
#define MOD 1000000007
#define PB push_back
#define MP make_pair
#define F first
#define S second

inline void normal(ll &a) { a %= MOD; (a < 0) && (a += MOD); }
inline ll modMul(ll a, ll b) { a %= MOD, b %= MOD; normal(a), normal(b); return (a*b)%MOD; }
inline ll modAdd(ll a, ll b) { a %= MOD, b %= MOD; normal(a), normal(b); return (a+b)%MOD; }
inline ll modSub(ll a, ll b) { a %= MOD, b %= MOD; normal(a), normal(b); a -= b; normal(a); return a; }
inline ll modPow(ll b, ll p) { ll r = 1; while(p) { if(p&1) r = modMul(r, b); b = modMul(b, b); p >>= 1; } return r; }
inline ll modInverse(ll a) { return modPow(a, MOD-2); }
inline ll modDiv(ll a, ll b) { return modMul(a, modInverse(b)); }

ll gcd(ll a,ll b){return b?gcd(b,a%b):a;}
ll lcm(ll a,ll b){return a/gcd(a,b)*b;}

int main(){
    int n,m,q;cin>>n>>m>>q;
    vvi g(n);
    rep(i,m){
        int l,r;
        cin>>l>>r;
        l--;r--;
        g[l].PB(r);
    }
    rep(i,n){
        sort(all(g[i]));
    }
    rep(i,q){
        int P,Q;
        cin>>P>>Q;
        P--;Q--;
        int cnt=0;
        for(int j=P;j<=Q;++j){
            cnt+=upper_bound(all(g[j]),Q)-g[j].begin();
        }
        cout<<cnt<<endl;
    }
}
