import std.stdio, std.algorithm, std.string, std.conv, std.array, std.range, std.math;
int read() { return readln.chomp.to!int; }
int[] reads() { return readln.split.to!(int[]); }


void main() {
    int n, m, Q; readf("%d %d %d\n",&n,&m,&Q);

    int[][] a = new int[][](n+1, n+1);
    foreach (i; 0..m) {
        int l, r; readf("%d %d\n", &l, &r);
        a[l][r]++;
    }

    foreach (i; 1..n+1) foreach (j; 1..n+1) {
        a[i][j] += a[i-1][j];
        a[i][j] += a[i][j-1];
        a[i][j] -= a[i-1][j-1];
    }

    debug {
        writeln(a);
    }

    foreach (i; 0..Q) {
        int l, r; readf("%d %d\n",&l,&r);
        int ans = a[r][r]
            - a[r][l-1]
            - a[l-1][r]
            + a[l-1][l-1];
        writeln(ans);
    }
}