Problem1093--观棋不语真君子

1093: 观棋不语真君子

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 128 MB

Description

观棋不语真君子,但是汉语你可以不说,编程语言你可以写啊……
玩过中国象棋的同学都知道炮必须隔子打子,所谓隔子:就是炮必须有个炮架,它要吃掉对方的棋子(不能自相残杀),炮和被吃者两者的连线上(横线或者竖线,不能斜线不能带拐弯)必须有且仅有一个棋子(自己的棋子和对方的棋子都可以做炮架)
现在假定:
红黑棋子的车马炮象士将兵分别是11 12 13 14 15 16 17和21 22 23 24 25 26 27
给你一个长度为16的一维数组,里面放若干个棋子,0表示棋盘上这个位置是空的
假定你执红炮,我给你一个位置x,请告诉我x这个位置的棋子你能否用炮吃掉,
能输出Yes,不能请输出No。

Input

每组测试数据格式如下:
第一行,一个整数N,表示有N个位置的棋子等待你去测试,你的红炮是否能吃(红炮就1个)
第二行,16个整数,表示当前的棋盘上的某一行的局势(假定棋盘宽度有16)
接下来的N行,每行一个整数,表示待检测的位置,看你的红炮能否吃这个地方的棋子

Output

能输出Yes,不能输出No
每组测试数据内换行,每组测试数据间用一个空行隔开

Sample Input Copy

2
11 0 0 0 0 26 0 13 0 0 0 12 0 23 0 27 
5 
13

Sample Output Copy

No
Yes

HINT

思维要全面

Source/Category