func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxVal = 200005;   int arr[maxVal];   int tree[4 * maxVal];   void build(int node, int start, int endd, int k) {     if (start == endd) {       if (arr[start] >= k)         tree[node] = 1;       else         tree[node] = 0;     } else {       int mid = (start + endd) / 2;       build(2 * node, start, mid, k);       build(2 * node + 1, mid + 1, endd, k);       tree[node] = tree[2 * node] + tree[2 * node + 1];     }   }   int query(int node, int start, int endd, int l, int r) {     if (start > r || endd < l) {       return 0;     } else if (l <= start && endd <= r) {       return tree[node];     } else {       int mid = (start + endd) / 2;       int a1 = query(2 * node, start, mid, l, r);       int a2 = query(2 * node + 1, mid + 1, endd, l, r);       return a1 + a2;     }   }   int main() {     int n, m, k;     cin >> n >> k >> m;     int a, b;     for (int i = 0; i < n; i++) {       cin >> a >> b;       arr[a]++;       arr[b + 1]--;     }     for (int i = 1; i < maxVal; i++) {       arr[i] = arr[i] + arr[i - 1];     }     build(1, 0, maxVal, k);     for (int i = 0; i < m; i++) {       cin >> a >> b;       cout << query(1, 0, maxVal, a, b) << endl;     }   }   