单点时限: 30.0 sec
内存限制: 512 MB
唐家堡里到底布置着多少各式各样的机关,恐怕唐家人也不会完全了解。靠着重重机关的保护,唐门得以在江湖上存在几百年而丝毫不受外界侵扰。
近日,多名侠士聚集在密室里,探寻唐家储存已久的宝藏。
唐门密室由空地(0)和墙(-1)组成,密室最外面一圈都是墙。n个侠士出现在密室的不同位置,由1-n表示;宝藏藏在其中一个空地上,由-2表示。如下图为一个8*10的密室结构图
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1
-1 1 0 0 0 0 0 0 2 -1
-1 -1 -1 -1 0 0 0 0 -1 -1
-1 -1 -1 -1 0 0 0 0 -1 -1
-1 -1 0 0 0 0 0 -1 -1 -1
-1 -2 0 -1 -1 -1 -1 0 0 -1
-1 -1 0 -1 0 0 0 0 3 -1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1
其中每个侠士每一秒都有两种行动方式可以选择:
行走:向一个方向移动1格
蹑云逐月:向一个方向冲刺r格,撞到墙会在墙面前提前停下来。(冲刺路过宝藏不算做夺得宝藏)
每名侠士全力以赴赶往宝藏,那么这次探寻密室的活动中,谁能率先夺得宝藏,用时多少。
第一行两个整数n,m,r,表示这是一个n*m的密室以及蹑云逐月冲刺的距离
接下来n行,每行m个整数,每个整数释义如上
数据约束
对于40%的数据,只有1个侠士并且r = 1;
对于60%的数据,只有1个侠士;
对于60%的数据,r = 1;
对于100%的数据,侠士数量不超过100,1 <= r <= 5,5 <= n,m <= 1000 ,并且至少有一个侠士可以到达宝藏处
第一行若干整数,表示最快寻得宝藏的侠士编号,如果有多个侠士同时到达,升序输出编号
第二行一个整数,表示最快寻得宝藏的时间
8 10 3 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 0 0 0 0 0 0 2 -1 -1 -1 -1 -1 0 0 0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 -1 -1 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -2 0 -1 -1 -1 -1 0 0 -1 -1 -1 0 -1 0 0 0 0 3 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
1 2 5
样例解释
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1
-1 1 0 0 a e 0 0 2 -1
-1 -1 -1 -1 0 0 0 0 -1 -1
-1 -1 -1 -1 0 0 0 0 -1 -1
-1 -1 c 0 b f 0 -1 -1 -1
-1 -2 d -1 -1 -1 -1 0 0 -1
-1 -1 0 -1 0 0 0 0 3 -1
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1
1号路线为1->a->b->c->d->-2
2号路线为2->e->f->c->d->-2
3号无法到达宝藏位置。