Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB

#4577. 矢量反转

Statistics

题目描述

Source: CodeForces 1148F. Foo Fighters

一方通行在与梼杌战斗的过程中,发现可以通过反转矢量的方式对魔法的防护造成更大的伤害。

现在一方通行能操控 $n$ 束共线的矢量,每个矢量有其强度 $v$ 和长度 $l$ ,其中 $l$ 的正负表示矢量的方向。

一方发现如果用一个标量 $s$ 对矢量强度 $v$ 进行二进制与操作后二进制表示中有奇数个 $1$ ,这个矢量的方向就会反转,为了让所有矢量的和的方向也反转以达到效果,必须要找到一个适合的 $s$ ,但是一方现在忙着与梼杌战斗无心演算,于是就把这个任务交给了你。

输入格式

第一行包含一个整数 $n$ ,表示矢量的数量

下面 $n$ 行,每行两个整数 $l_i,\,v_i$ ,分别表示矢量的长度与强度。

输出格式

输出包含一个整数,表示能使得矢量反转的 $s$ ,由于答案可能不唯一,你只需要输出任意一个。

样例

input

5
-18 9
-14 56
12 55
-30 31
-14 23

output

8

数据范围与提示

对于 $30\%$ 的数据,$n\le 500,\ |l_i|\le 10^5,\ 1\le v_i\le 10^5$;

对于 $100\%$ 的数据,保证 $n\le3\times10^5,\ |l_i|\le10^9,\ 1\le v_i<2^{62}$

数据保证 $\sum l_i \ne 0$