区间 $[l, r]$ 指的是由所有大于等于 $l$ 且小于等于 $r$ 的实数组成的集合。
给定 $N$ 个区间。请编写一个程序来处理 $Q$ 个如下形式的询问:
- 对于给定的 $l$ 和 $r$,是否可以选择一个或多个区间,使得它们的交集恰好为 $[l, r]$?如果可以,最少需要选择多少个区间?
输入格式
第一行包含区间个数 $N$。$(1 \le N \le 300\,000)$
接下来的 $N$ 行,每行包含两个由空格分隔的整数 $l_i$ 和 $r_i$,表示一个区间 $[l_i, r_i]$。$(0 \le l_i < r_i \le 10^6)$
下一行包含询问个数 $Q$。$(1 \le Q \le 300\,000)$
接下来的 $Q$ 行,每行包含两个由空格分隔的整数 $l$ 和 $r$,表示询问的区间。$(0 \le l < r \le 10^6)$
输出格式
对于每个询问,输出一行。如果无法使区间的交集恰好为 $[l, r]$,则输出 $-1$;如果可以,则输出所需选择的最小区间个数。
样例
输入 1
3 0 10 2 6 4 8 3 4 6 2 8 1 9
输出 1
2 -1 -1