Broken LED
题号:NC54613
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述


xx带学的超市的格局,是和别处不同的:是两三个长条形的大柜台,柜上一个收银机和刷卡机,可以随时刷卡。上学的人,傍晚没了课,每每花几块或十几块钱,买些东西;倘肯多花两三块钱,便可以买一根烤香肠。

我从十二岁起,便在这个超市里当收银员,老板娘说,我样子太傻,怕侍候不了顾客,就在柜台收收钱吧。但我脑子不灵光,操作收银台速度也慢,常常在后面排着二十几个人的情况下一个人慢吞吞地收钱。所以过了几天,老板娘又说我干不了这事。幸亏荐头的情面大,辞退不得,便改为专管操作刷卡机的一种无聊职务了。

我从此便整天的站在柜台里,专管我的职务。虽然没有什么失职,但总觉得有些单调,有些无聊。只有Bob到店,才可以笑几声,所以至今还记得。

xx带学的超市的刷卡机,是用上面图里的那种数码管显示的四位整数。把卡放到读卡器上,就可以显示出卡里的余额。有天,Bob到了店里,对柜里说:“拿两支笔,要一根烤香肠。” 便把卡放到读卡器上,但恰好那天,读卡器坏了,有几根数码管本应亮着,却错误地灭掉了,但我并不知道有哪几根管子坏了。于是,他对我说道,“你读过书么?”我略略点一点头。他说,“读过书,……我便考你一考。你看我把卡放上去,它就读出了一个四位数,但是这个四位数是不准确的,因为有几根管子坏掉了。对不对?我现在买了元的东西,你看这个读卡器显示的余额,我在最乐观的情况下余额能不能够买下这元的东西?”

我人都傻了,求助排在队伍后面的你帮我回答他这个问题。

输入描述:

第一行是一个正整数,表示测试数据的规模。
接下来组数据,每组数据第一行是一个整数,表示Bob买的商品的总价格;接下来有7行字符串,每行长为27(=6*4+3)个字符,表示读卡器读出的内容图样。 表示该位置为灭,而 (大写字母X)表示该格为亮。每个数字的高度为7个字符,宽度为6个字符,相邻的数字之间用一列 隔开。具体地,每种数字的表示方式见下方。每个数字一共用7根数码管表示,每根数码管不是亮的就是灭的,即不会出现同一根数码管上一段为亮,另一段为灭的情况。
注意可能有一些数码管错误地灭掉了,但不可能出现本应灭掉的数码管错误地亮起的情况

输出描述:

对每组数据,输出一行"Yes"(不含引号)表示在最乐观的情况下,Bob的钱能够买下这元的商品,否则输出一行"No"(不含引号),表示无论如何Bob都不可能买下这元的商品。注意大小写。
示例1

输入

复制
3
4396
.XXXX...XXXX...............
X......X....X.X....X......X
X......X....X.X....X......X
.XXXX..........XXXX........
.....X.X....X......X......X
.....X.X....X......X......X
.XXXX...XXXX...............
701
........XXXX...XXXX...XXXX.
.......X...........X......X
.......X...........X......X
........XXXX...XXXX...XXXX.
.......X....X......X.X.....
.......X....X......X.X.....
........XXXX...XXXX...XXXX.
9961
........XXXX...XXXX........
.....X.X....X......X.X....X
.....X.X....X......X.X....X
...............XXXX...XXXX.
.....X.X....X.X...........X
.....X.X....X.X...........X
........XXXX...XXXX........

输出

复制
Yes
Yes
No

说明

对第一组样例,显示的数字5014>4396,所以可以买下商品。

对第二组样例,有可能第一个数字的灯管都坏掉了,卡内的余额可能是4632(当然了,也有可能是3632,或是3682,或是其他的),大于701,所以也可以买下商品。

对第三组样例,在所有的情况下都不可能买下价格为9961的商品。