2929. 星际转移问题

单点时限: 2.0 sec

内存限制: 256 MB

由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了。

于是在月球上建立了新的绿地,以便在需要时移民。令人意想不到的是,2177 年冬由于未

知的原因,地球环境发生了连锁崩溃,人类必须在最短的时间内迁往月球。现有 n 个太空站

位于地球与月球之间,且有 m 艘公共交通太空船在其间来回穿梭。每个太空站可容纳无限

多的人,而每艘太空船 i 只可容纳 H[i] 个人。每艘太空船将周期性地停靠一系列的太空站,

例如:(1,3,4) 表示该太空船将周期性地停靠太空站 134134134…。每一艘太空船从一个太

空站驶往任一太空站耗时均为 1。人们只能在太空船停靠太空站 (或月球、地球) 时上、下船。

初始时所有人全在地球上,太空船全在初始站。试设计一个算法,找出让所有人尽快地全部

转移到月球上的运输方案。

输入格式

第 1 行有 3 个正整数 n (太空站个数),m (太空船

个数)和 k (需要运送的地球上的人的个数)。其中 1<=m<=20, 1<=n<=20, 1<=k<=50。

接下来的 m 行给出太空船的信息。第 i+1 行说明太空船 pi。第 1 个数表示 pi 可容纳的

人数 Hpi;第 2 个数表示 pi 一个周期停靠的太空站个数 r,1<=r<=n+2;随后 r 个数是停靠

的太空站的编号 (Si1,Si2,…,Sir),地球用 0 表示,月球用-1 表示。时刻 0 时,所有太空船都

在初始站,然后开始运行。在时刻 1,2,3… 等正点时刻各艘太空船停靠相应的太空站。人

只有在 0,1,2… 等正点时刻才能上下太空船。

输出格式

程序运行结束时,将全部人员安全转移所需的时间输出 , 如果无解或答案大于 30,则输出 0。

样例

Input
2 2 1
1 3 0 1 2
1 3 1 2 -1
Output
5

8 人解决,9 人已尝试。

12 份提交通过,共有 40 份提交。

6.0 EMB 奖励。

创建: 18 年,9 月前.

修改: 7 年,2 月前.

最后提交: 1 年,5 月前.

来源: zzz-周正中

题目标签