function ary2(y,x){x=x||y;return Array(y).fill(0).map(a=>Array(x).fill(0));}
function gets(str){
  this._s = str.split("\n");
  this._y = 0;
};
gets.prototype = {
  a: function(f){
    var s = this._s, y = this._y, r;
    if(typeof s[y] === "string")s[y] = s[y].split(" ").reverse();
    r = s[y].pop();
    if(!s[y].length)this._y++;
    return f?r:+r;
  },
  one: function(f){return this.a(f);},
  single: function(f){return this.a(f);},
  l: function(f){
    var s = this._s, y = this._y;
    s[y] = typeof s[y] === "string" ? s[y].split(" ") : s[y].reverse();
    this._y++;
    return f?s[y]:s[y].map(a=>+a);
  },
  line: function(f){return this.l(f);},
  row: function(f){return this.l(f);},
  m: function(n,f){
    var s = this._s, y = this._y, r = [], i = 0;
    if(f)for(;i < n; i++)r[i] = s[y+i].split(" ");
    else for(;i < n; i++)r[i] = s[y+i].split(" ").map(a=>+a);
    this._y += n;
    return r;
  },
  matrix: function(n,f){return this.m(n,f);},
};

var o = new gets(require("fs").readFileSync("/dev/stdin","utf8"));
main();
function main(){
  var n = o.a(), m = o.a(), q = o.a();
  var l = o.m(m);
  var p = o.m(q);
  var dp = ary2(n+1);
  for(var i = 0; i < m; i++){
    dp[l[i][0]][l[i][1]]++;
  }
  for(i = 1; i <= n; i++){
    dp[i][i] += dp[i-1][i];
    for(var j = i+1; j <= n; j++){
      dp[i][j] += dp[i][j-1] + dp[i-1][j] - dp[i-1][j-1];
    }
  }
  var ans = [];
  for(i = 0; i < q; i++){
    ans[i] = dp[p[i][1]][p[i][1]] - dp[p[i][0]-1][p[i][1]];
  }
  console.log(ans.join("\n"));
}
