吴老板喜欢喝茶,喝茶后就喜欢躺在床上想一些稀奇古怪二进制数学问题。
今晚他喝完茶,构思了道这样的问题:
给你a数列a[1].a[2],...a[n-1]和b数列b[1],b[2],...,b[n-1]。
现在需要你构造新数列t[1],t[2],...,t[n],使得t[i]|t[i+1]=a[i],t[i]&t[i+1]=b[i]。(“|”表示位运算“或”,即“or”。“&”表示位运算“与”,即“and”)。
最终询问是否可以构造出t数列,如果可以输出"YES",否则输出"NO"
输入描述:
第一行:一个整数n,代表需要构造的数列t的长度第二行:n-1个整数,代表a[1],a[2],...a[n-1]第三行:n-1个整数,代表b[1],b[2],...b[n-1]
输出描述:
输出一行,如果存在满足要求的t数列,输出"YES",否则输出"NO"
示例1
说明
存在t数列的构造 1 3 2 01|3=3 1&3=13|2=3 3&2=22|0=2 2&0=0
备注:
数据范围:
2≤ n≤1e5
0≤ ai≤3
0≤ bi≤3
0≤ ti≤3