# https://atcoder.jp/contests/abc106/tasks/abc106_d



# MAX_N = 505

n, m, q = list(map(int, input().split()))

X = [[0] * (n + 1) for _ in range(n + 1)]

C = [[0] * (n + 1) for _ in range(n + 1)]

count = [0] * (n + 1)

for _ in range(m):

    li, ri = list(map(int, input().split()))

    X[li][ri] += 1

for i in range(1, n + 1):

    for j in range(1, n + 1):

        C[i][j] = C[i][j - 1] + X[i][j]



for _ in range(q):

    p, q = list(map(int, input().split()))

    sum_k = 0

    for j in range(p, q + 1):

        sum_k += C[j][q] - C[j][p - 1]

    print(sum_k)
# https://atcoder.jp/contests/abc106/tasks/abc106_d



MAX_N = 505

n, m, q = list(map(int, input().split()))

P = [[0] * MAX_N for _ in range(MAX_N)]



# 二次元累積和

for _ in range(m):

    li, ri = list(map(int, input().split()))

    P[li][ri] += 1

for i in range(1, MAX_N):

    for j in range(1, MAX_N):

        P[i][j] += P[i][j - 1]

for i in range(1, MAX_N):

    for j in range(1, MAX_N):

        P[i][j] += P[i - 1][j]



# queryに答える

for _ in range(q):

    l, r = list(map(int, input().split()))

    ans = P[r][r] + P[l - 1][l - 1] - P[l - 1][r] - P[r][l - 1]

    print(ans)
# https://atcoder.jp/contests/abc106/tasks/abc106_d
# MAX_N = 505
n, m, q = list(map(int, input().split()))
X = [[0] * (n + 1) for _ in range(n + 1)]
C = [[0] * (n + 1) for _ in range(n + 1)]
count = [0] * (n + 1)
for _ in range(m):
    li, ri = list(map(int, input().split()))
    X[li][ri] += 1
for i in range(1, n + 1):
    for j in range(1, n + 1):
        C[i][j] = C[i][j - 1] + X[i][j]
for _ in range(q):
    p, q = list(map(int, input().split()))
    sum_k = 0
    for j in range(p, q + 1):
        sum_k += C[j][q] - C[j][p - 1]
    print(sum_k)

# https://atcoder.jp/contests/abc106/tasks/abc106_d
MAX_N = 505
n, m, q = list(map(int, input().split()))
P = [[0] * MAX_N for _ in range(MAX_N)]
# 二次元累積和
for _ in range(m):
    li, ri = list(map(int, input().split()))
    P[li][ri] += 1
for i in range(1, MAX_N):
    for j in range(1, MAX_N):
        P[i][j] += P[i][j - 1]
for i in range(1, MAX_N):
    for j in range(1, MAX_N):
        P[i][j] += P[i - 1][j]
# queryに答える
for _ in range(q):
    l, r = list(map(int, input().split()))
    ans = P[r][r] + P[l - 1][l - 1] - P[l - 1][r] - P[r][l - 1]
    print(ans)

-# MAX_N = 505 +MAX_N = 505 -X = [[0] * (n + 1) for _ in range(n + 1)] -C = [[0] * (n + 1) for _ in range(n + 1)] -count = [0] * (n + 1) +P = [[0] * MAX_N for _ in range(MAX_N)] +# 二次元累積和 -    X[li][ri] += 1 -for i in range(1, n + 1): -    for j in range(1, n + 1): -        C[i][j] = C[i][j - 1] + X[i][j] +    P[li][ri] += 1 +for i in range(1, MAX_N): +    for j in range(1, MAX_N): +        P[i][j] += P[i][j - 1] +for i in range(1, MAX_N): +    for j in range(1, MAX_N): +        P[i][j] += P[i - 1][j] +# queryに答える -    p, q = list(map(int, input().split())) -    sum_k = 0 -    for j in range(p, q + 1): -        sum_k += C[j][q] - C[j][p - 1] -    print(sum_k) +    l, r = list(map(int, input().split())) +    ans = P[r][r] + P[l - 1][l - 1] - P[l - 1][r] - P[r][l - 1] +    print(ans)