import java.util.Scanner;
public class Main {
static class P {
int x;
int y;
public P(int x, int y) {
this.x = x;
this.y = y;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int k = scanner.nextInt();
P[] T = new P[100005];
for (int i = 0; i < n; i++) {
int x = scanner.nextInt();
int y = scanner.nextInt();
T[i] = new P(x, y);
}
for (int i = 0; i < m; i++) {
int c = scanner.nextInt();
int ans = 0;
c += k;
for (int j = 0; j < n; j++) {
if (c + T[j].y > T[j].x && T[j].x >= c) {
ans++;
}
}
System.out.println(ans);
}
}
}
二:差分
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int k = scanner.nextInt();
int[] res = new int[200001];
for(int i = 0 ; i < n ; i++){
int t , c;
t = scanner.nextInt();
c = scanner.nextInt();
int l = Math.max(t - k - c + 1, 0);
int r = Math.max(0, t - k);
res[l] += 1;
res[r + 1] -= 1;
}
for (int i = 1; i < 200001; i ++)
{
res[i] += res[i - 1];
}
for (int i = 0; i < m; i ++)
{
int q;
q = scanner.nextInt();
System.out.println(res[q]);
}
}
}