题目描述
给你 n 个布尔变量和 m 个限制,设 si 为 i 的取值。第 i 个限制形如 sui 为 xi 则 svi 必须为 yi,同时如果 svi 为 yi 则 sui 必须取 xi。
一共 q 次询问,每次询问给出一个区间 l,r。求最少把 l,r 划分成多少段连续的区间,使得每段里的限制都可以得到一组合法解。如果无论如何都无法得到合法解,输出 -1
。
输入格式
第一行三个数,n,m,q。
接下来 m 行每行四个数,代表 ui,xi,vi,yi。
接下来 q 行每行两个数,代表 li,ri。
输出格式
对于每个询问输出一个数作为答案,如果无法得到答案输出 -1
。
提示
样例解释一
对于第一个询问,可以分成 [1,2] 和 3 两段。
对于第二个询问,分成 [3,4] 一段。
样例解释二
对于第一个询问,分成 [1,4] 一段。
对于第二个询问,可以分成 [2,3] 和 [4,5] 两段。
对于第三个询问,分成 [3,5] 一段。
数据编号 |
n≤ |
m≤ |
q≤ |
1 |
30 |
100 |
300 |
2∼4 |
300 |
103 |
5∼7 |
104 |
5×104 |
106 |
8∼10 |
105 |
6×105 |
对于 100% 的数据,1≤n≤105,1≤m≤6×105,1≤q≤106,1≤u,v≤n,1≤l≤r≤m,x,y∈{0,1}