209009 - 解药还是毒药

小光研制出对付各种症状的解药,可是他一个不小心,每种药都小小地配错了一点原料,所以这些药都有可能在治愈某些病症的同时又使人患上某些别的病症,经过小光的努力,终于弄清了每种药的具体性能,他会把每种药能治愈的病症和能使人患上的病症列一张清单给你,然后你要根据这张清单找出能治愈所有病症的最少药剂组合。 病症的数目不超过10种,而且他的药是用不完的,就是说每种药剂都可以被重复使用。

输入

输入第一行是病症的总数n(1≤n≤10)。 第二行是药剂的种类m(0<m≤100)。 随后有m行,每行有n个数字用空格隔开,文件的第i+2行的n个数字中,如果第j个数为1,就表示第i种药可以治愈病症j(如果患有这种病的话则治愈,没有这种病则无影响),如果为0表示无影响,如果为-1表示反而能使人得上这种病(无病患上,有病无影响)。小光制的药任何两种性能都不同。

输出

输出用的最少的药剂数,如果用尽了所有的药也不能将所有病治愈,则输出“The patient will be dead.”。

样例

输入

3
2
1 0 1
-1 1 0

输出

2
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题