【题目背景】
一望无垠的大海上,现在刮起了妖风。
【题目描述】
Ehundategh 现在在大海上旅行,整个大海可以看作一个二维平面,Ehundategh 从 ( 0 , 0 ) (0,0) ( 0 , 0 ) 出发,并且想到 ( x , y ) (x,y) ( x , y ) 去,现在海上刮着妖风,但是经验丰富的 Ehundategh 判断出来,这是季风气候的标志,他发现,每一阵妖风都会在每一日的傍晚时分刮起,并且,妖风是有周期性的,以 n n n 天为一个周期,也就是说,第 n + 1 n+1 n + 1 天刮的风跟第 1 1 1 天的风完全一样,进一步地讲,若有两天 t 1 , t 2 t_1,t_2 t 1 , t 2 满足 t 1 ≡ t 2 ( m o d n ) t_1\equiv t_2 \pmod n t 1 ≡ t 2 ( mod n ) ,那么这两天的风是一模一样的。
Ehundategh 扬帆起航了,他在第 1 1 1 天的白天启航,每一天白天,他都能先沿着 x x x 轴方向走整数单位的距离,再沿着 y y y 轴方向走整数单位的距离,也就是说,他只能上下左右行动,并且一次走一单位距离。由于船的码力有限,所以他每日行动的曼哈顿距离 不能超过 k k k 。每到傍晚,妖风便会刮起来,第 i i i 天以及之后周期对应天数的妖风会让船沿 x x x 轴正方向移动 x i x_i x i 的距离,并沿 y y y 轴正方向移动 y i y_i y i 的距离(若距离为负,则视为向反方向移动)。
传闻,如果船只在某一天的妖风过去后,刚好被吹到自己的目的地,便会受到大海的保佑,于是,Ehundategh 想知道,至少要多少天才能够让自己恰好在那天傍晚被吹到 ( x , y ) (x,y) ( x , y ) ,如果 ( x , y ) = ( 0 , 0 ) (x,y)=(0,0) ( x , y ) = ( 0 , 0 ) 则输出 0 0 0 ,如果永远都做不到,则输出 − 1 -1 − 1 。
【输入格式】
从文件 wind.in \textbf{\textit{wind.in}} wind.in 中读入数据。
本题有多组测试数据 ,在输入的第一行,有一个整数 T T T ,表示数据组数。
每组数据的第一行包含两个正整数 n , k n,k n , k 和两个整数 x , y x,y x , y ,表示妖风周期、船的码力以及目标地点的坐标。
接下来 n n n 行,每行两个整数 x i , y i x_i,y_i x i , y i ,表示第 i i i 天的妖风会将船推动 x i , y i x_i,y_i x i , y i 的距离。
【输出格式】
输出到文件 wind.out \textbf{\textit{wind.out}} wind.out 中。
对于每组测试数据,输出一行一个整数,如果存在满足题意的天数,输出其最小可能值,否则输出 − 1 -1 − 1 。
【样例 1 输入】
复制样例 1 4 2 1 2 2 2 3 1 1 4 1 2 -2 -2 5 1 1 6 1 2 0 0 7 1 1 8 2 100000000 100000000 100000000 9 -99999999 0 10 -100000000 0
【样例 1 输出】
【说明/提示】
【样例 2】
见选手目录下的 wind/wind2.in \textbf{\textit{wind/wind2.in}} wind/wind2.in 和 wind/wind2.ans \textbf{\textit{wind/wind2.ans}} wind/wind2.ans 。
该组样例符合测试点 9 ∼ 12 9\sim 12 9 ∼ 12 的数据范围,其中 T = 1000 T=1000 T = 1000 ,∑ n = 2 × 10 5 \sum n=2\times 10^5 ∑ n = 2 × 1 0 5 。
【样例 3】
见选手目录下的 wind/wind3.in \textbf{\textit{wind/wind3.in}} wind/wind3.in 和 wind/wind3.ans \textbf{\textit{wind/wind3.ans}} wind/wind3.ans 。
该组样例符合测试点 13 ∼ 20 13\sim 20 13 ∼ 20 的数据范围,其中 T = 1000 T=1000 T = 1000 ,∑ n = 2 × 10 5 \sum n=2\times 10^5 ∑ n = 2 × 1 0 5 。
【样例 4】
见选手目录下的 wind/wind4.in \textbf{\textit{wind/wind4.in}} wind/wind4.in 和 wind/wind4.ans \textbf{\textit{wind/wind4.ans}} wind/wind4.ans 。
该组样例符合测试点 13 ∼ 20 13\sim 20 13 ∼ 20 的数据范围,其中 T = 1500 T=1500 T = 1500 ,∑ n = 2 × 10 5 \sum n=2\times 10^5 ∑ n = 2 × 1 0 5 。
【数据范围】 特殊性质:对于所有 1 ≤ i ≤ n 1\leq i\leq n 1 ≤ i ≤ n ,均满足 ∣ x i ∣ + ∣ y i ∣ ≤ k \lvert x_i\rvert+\lvert y_i\rvert\leq k ∣ x i ∣ + ∣ y i ∣ ≤ k 。
对于 100 % 100\% 100% 的数据,保证:1 ≤ T ≤ 10 5 1\leq T\leq 10^5 1 ≤ T ≤ 1 0 5 ,1 ≤ n ≤ 10 5 1\leq n\leq 10^5 1 ≤ n ≤ 1 0 5 ,1 ≤ k ≤ 10 9 1\leq k\leq 10^9 1 ≤ k ≤ 1 0 9 ,− 10 9 ≤ x , y , x i , y i ≤ 10 9 -10^9\leq x,y,x_i,y_i\leq 10^9 − 1 0 9 ≤ x , y , x i , y i ≤ 1 0 9 。