U474754 保卫萝卜(塔防)
题目背景
### 当你玩完保卫萝卜,你就迷上了塔防游戏
题目描述
有一天你突然收到通知,城堡里进了鬼,他们要吃你的唐僧肉。于是你就赶忙派上救援小队,你的救援小队特别的强,因为他们有刷怪箱,可以无限繁殖。但经过以前的几次战争,只剩下了救援队队长。你就派遣他去救援。
救援队长很聪明,他知道怎么分配和升级人员进行战斗。但他也很怕死,不希望自己牺牲,所以不上战场。
每个救援小队队员都是一样的,只要被放出来就是1级。必须通过金币升级:
召唤1级队员要r金币,总共有o个金币
1级.攻击范围为9个格子,伤害为1
2级.攻击范围为9个格子,伤害为2
3级.攻击范围为9个格子,伤害为3
4级.攻击范围为9个格子,伤害为4
5级.攻击范围为16个格子,伤害为4
6级.攻击范围为16个格子,伤害为6
7级.攻击范围为16个格子,伤害为8(这个级没啥用!)
8级(最后一级).攻击范围为25个格子,伤害为4
升1级需k金币,可攻击围绕自己为中心攻击范围的格子
可以在空白处召唤救援小队队员
有z个鬼要参与战斗,第i行表示i级的鬼有a[i]个,鬼的规则:
i级的鬼速度为i,血量为max(i / 2,1)。一秒前进i步。
由"*"铺路从(1,1)的位置到(n,m)的位置,是鬼的路线。
救援小队队长一秒最多召唤一个救援小队队员或升级两名队员。救援小队队员一秒可以攻击在自己范围内的鬼,造成那么多的攻击,但只能攻击一个鬼。
鬼的出场顺序是从最低级的鬼出发1个,死了在出发两个,接着3个,4个,到最后不够就一次性出完。在那一波死后会等一秒在出下一波。
只要有鬼到了(n,m)的位置就输了,就输出NO。
否则就输出鬼最慢到达的位置,从(1,1)计数。
输入格式
第一行n,m。空格隔开。
下面n行,m列,表示整个战场,除了"*"以外,是空地"."。
第n + 2行两个数o,r,k。
下一行一个数z
接下来一行z个数,a[i]。

输出格式
答案
说明/提示
样例一#1解释:
可以把队员升到7级无敌,可是没有太多时间升了,鬼很快到达,只要再有1秒就可以了
所有的数都在int范围以内