【HPU-2016校賽-D】Ou à


點擊打開鏈接



Ou à
Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu

Description

Ou à是什麼東東?



華麗的分割線?233333......


Ocean的小學弟學習了新的二進制運算異或"^"

對於$0、1$二進制位而言,異或運算結果如下:

0 ^ 0 = 0,0 ^ 1 = 1,1 ^ 0 = 1,1 ^ 1 = 0

即相同爲$0$,不同爲$1$。 

這天,Ocean的小學弟給了HPU一個等式x ^ y = z,並提出了一個問題:如果知道了$y$和$z$的值,$x$的值是否可以唯一確定?(要求$x >= 0$) 
Ocean正在瘋狂的debug,沒有時間去思考,所以找你來幫助他的小學弟。 

Input

第一行輸入一個整數$T$,代表有$T$組測試數據。 
每組數據輸入兩個整數$y、z$,代表上面提到的信息。 

注:$1 <= T <= 1000,1 <= y,z <= 10^8。$ 

Output

對每組測試數據,若$x$的值無法唯一確定或者不存在,則輸出$-1$,反之輸出$x$的值。

Sample Input

2
1 2
2 3

Sample Output

3
1


//            題解:這道題其實很簡單,任意兩個數異或都可以得到另一個數。

//代碼如下:

#include <cstdio>
int main()
{
	int t;
	scanf ("%d",&t);
	while (t--)
	 {
	 	int y,z;
	 	scanf ("%d%d",&y,&z);
	 	 	int m;
	 	 	m = y^z;
	 	 	if (m >= 0)
	 	      printf ("%d\n",y^z);
	 	    else
	 	      printf ("-1\n");
	 }
return 0;
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章