首页 > 试题广场 >

数字序列

[编程题]数字序列
给出两个互质的数p,q,它们定义了一个长为(p x q)的布尔序列.
其中A的第以及项都是已知的,并且我们已知长为(p x q)的数字序列B.
已知A满足:
定义集合
1,
其中,为逻辑异或,为逻辑或.所有数组下标,下同.
2,  若b[x] = b[x + p] 则 a[x] = a[x + p]
 若b[x] = b[x + q] 则 a[x] = a[x + q]
请你判断是否存在一个A满足限制. 存在则输出"Yes", 否则输出"No".

输入描述:
第一行两个数p,q.
之后一行q个数,表示A[0], A[p], A[2p],...
之后一行p - 1个数,表示A[q], A[2q], A[3p],...
之后一行p * q个数,表示B序列.
b[i] ∈ [0, 50)
0 ≤ p * q ≤ 104
p, q ≥ 2
gcd(p, q) = 1


输出描述:
一行,"Yes"或"No".
示例1

输入

2 3
1 1 1
0
1 2 3 4 5 6

输出

Yes

说明

对于样例1,显然A={0, 1, 0, 1, 0, 1}是合法的.
示例2

输入

2 3
0 1 1
1
1 2 3 4 5 3

输出

No

说明

对于样例2,容易发现A[5]被A[2]确定了,
此时A[1]取多少都不满足条件.