异或
时间1 Sec 内存128 MB
题目描述
现在有n个非负整数 X0, X1, ..., Xn-1 都小于2^20 ,但是你不知道它们的值,并且它们的值是不变的。
现在慢慢的给定一些关于这些数的关系,并且会有一些问题。
一共有两种事实关系和一种问题:
格式含义
I p v表示Xp = v
I p q v表示Xp XOR Xq = v
Q k p1 p2 ? pk要求输出 Xp1 XOR Xp2 XOR ... XOR Xpk
输入
第一行包含两个整数n和Q (1<=n<=20,000, 2<=Q<=40,000).
接下来Q行,每行包含一个事实关系或者一个询问,格式如题目描述。 若是一个询问,其中k<=15, 若是事实关系0<=v <=2^20。
输出
回答每个询问的问题。如果你无法根据前面提供的事实确定这个答案,则输出"I don't know.", 不包含引号.如果低i个事实(不包含询问)不能与前面的事实相一致,输出 "The first i facts are conflicting.", 并且对下面的事实和询问都不做任何处理。
样例输入
2 6
I 0 1 3
Q 1 0
Q 2 1 0
I 0 2
Q 1 1
Q 1 0
3 3
I 0 1 6
I 0 2 2
Q 2 1 2
2 4
I 0 1 7
Q 2 0 1
I 0 1 8
Q 2 0 1
样例输出
I don't know.
3
1
2
4
7
The first 2 facts are conflicting.
时间1 Sec 内存128 MB
题目描述
现在有n个非负整数 X0, X1, ..., Xn-1 都小于2^20 ,但是你不知道它们的值,并且它们的值是不变的。
现在慢慢的给定一些关于这些数的关系,并且会有一些问题。
一共有两种事实关系和一种问题:
格式含义
I p v表示Xp = v
I p q v表示Xp XOR Xq = v
Q k p1 p2 ? pk要求输出 Xp1 XOR Xp2 XOR ... XOR Xpk
输入
第一行包含两个整数n和Q (1<=n<=20,000, 2<=Q<=40,000).
接下来Q行,每行包含一个事实关系或者一个询问,格式如题目描述。 若是一个询问,其中k<=15, 若是事实关系0<=v <=2^20。
输出
回答每个询问的问题。如果你无法根据前面提供的事实确定这个答案,则输出"I don't know.", 不包含引号.如果低i个事实(不包含询问)不能与前面的事实相一致,输出 "The first i facts are conflicting.", 并且对下面的事实和询问都不做任何处理。
样例输入
2 6
I 0 1 3
Q 1 0
Q 2 1 0
I 0 2
Q 1 1
Q 1 0
3 3
I 0 1 6
I 0 2 2
Q 2 1 2
2 4
I 0 1 7
Q 2 0 1
I 0 1 8
Q 2 0 1
样例输出
I don't know.
3
1
2
4
7
The first 2 facts are conflicting.