#HK5289. 「PA 2015」Roboty

「PA 2015」Roboty

题目描述

题目译自 PA 2015 Runda 5 Roboty

船长 Bajtazar 负责监督富含自然资源的行星体 BA-1T 的殖民工作。他的职责包括管理开采阿尔丹矿(ardanium)的机器人矿工。太空天气预报显示,陨石雨即将来袭,届时最好让所有机器人躲进装甲基地。

不幸的是,矿工的控制系统存在诸多不足。唯一能做的就是输入一个非负整数 kk,这将导致向每个机器人发送 kk 次「移动!」指令。

在行星表面划分了 nn 个区域。其中一些是基地,其余的是阿尔丹矿露天矿场。机器人矿工配备了量子大脑,因此它们的行动是非确定性的。对于每个区域 ss,Bajtazar 知道一个非空的区域集合 AsA_{s},即位于区域 ss 的任何机器人收到指令后,会移动到集合 AsA_{s} 中的某个区域。但具体会移动到哪个区域无法预测;也不能指望任何重复性——即使某个机器人多次位于区域 ss,它这次也可能移动到与之前不同的区域。

现在,Bajtazar 想知道是否存在一个 kk,使得每个机器人在执行 kk 次「移动!」指令后,必定位于某个基地内。

输入格式

输入数据的第一行包含三个整数 n,b,rn, b, r (2n200,1b,rn)(2 \leq n \leq 200, 1 \leq b, r \leq n),分别表示区域数量、基地数量和机器人矿工数量。区域编号为 11nn,其中编号 11bb 的区域是基地。

接下来是 nn 行,描述收到「移动!」指令后的可能移动:第 ii 行包含一个由 nn 个数字组成的字符串,数字取自集合 {0,1}\{0, 1\};其中第 jj 个数字为 11 当且仅当矿工收到指令后可以从区域 ii 移动到区域 jj。每行中至少有一个数字为 11

最后一行包含 rr 个按升序排列的整数,范围在 11nn 之间,表示机器人矿工最初所在的区域编号。

输出格式

如果 Bajtazar 寻找的数字 kk 不存在,则输出数字 1-1。否则,我们保证存在一个满足 Bajtazar 要求的非负整数,且其十进制表示最多有 200200 位数字。此时,应输出任意一个这样的数字。

4 2 2
0100
0010
1001
1000
3 4

2

4 2 2
0100
0010
1001
1000
2 3

-1