#851. 公鸡打鸣

公鸡打鸣

题目背景

鸡国中有两只最喜欢打鸣的公鸡G1和G2,它们每一次打鸣都有一个声音的响度值。

题目描述

鸡国中有两只最喜欢打鸣的公鸡 G1 和 G2,它们每一次打鸣都有一个声音的响度值。 一天清晨,G1开始先开始打鸣,响度值为x,G2听到G1的打鸣后也开始打鸣,响度值为y。G1和G2很想把它们打鸣声音的响度值调成一样。所以它们进行了k次协商,每一次协商后就各自增加或减少一定的响度值再打鸣一次(打鸣的响度值不能小于0)。G1和G2生性迟钝,它们不知道其实经过s(s≤k)次协商后,打鸣声音的响度值已经相同了。 请编程帮G1和G2计算一下它们打鸣声音的响度值相同时最少经过了几次协商(即最小的s)? 注意:如果x一开始就等于y,则不需要协商。

输入格式

输入共k+1行。 第1行三个整数x,y和k,分别表示G1、G2第一次打鸣时声音的响度值,共进行了k次协商并调整打鸣声音的响度值。 接下来k行,每行包含4个整数a_i,x_i,b_i,y_i,表示第i次协商G1增加(a_i等于1)或减少(a_i等于-1)的响度值为x_i,G2增加(b_i等于1)或减少(b_i等于-1)的响度值y_i。

输出格式

输出1行一个整数,表示至少经过多少次协商后G1和G2的打鸣响度值已经相同。如果经过k次协商后仍然无法相同,则输出"-1"(不包含双引号)。

样例输入

2 3 3
1 1 -1 0
-1 1 1 1
1 1 -1 1

样例输出

1

样例解释

在样例1中,G1和G2第1次打鸣的响度值分别为2和3,不相同。第1次协商G1增加1,G2减少0,响度值分别为3和3,所以经过1次协商后它们两个打鸣的响度值已经相同。经过3次协商时,它们的声音也能调成一样,但至少需要1次协商就可以了。

数据范围约定

  • 测试点1~4:0≤x,y≤10,0≤k≤10,a_i为1或者-1,0≤x_i,y_i≤5
  • 测试点5~10:0≤x,y≤10^5,0≤k≤10^5,b_i为1或者-1,0≤x_i,y_i≤10^5