#P14948. Plants vs Zombies
Plants vs Zombies
Description
有 名敌人将会按照顺序拜访你的草坪,第 个敌人的血量是 。草坪上有 个陷阱,对每个 ,都有一个计数器 被设置在第 个陷阱上。初始时,所有 都是 。
每名敌人都会从第 个陷阱走到第 个陷阱,一直走到第 个陷阱。如果在走遍所有陷阱后它尚未死亡,它就会吃掉你的脑子。但与此同时,陷阱对敌人会造成伤害,一个敌人经过一个陷阱时,其血量会减少 ,对应陷阱的计数器会增加 。一个敌人死亡,当且仅当它的生命值 不高于 。此时,它会被埋葬在对其造成对应伤害的陷阱下面,不再移动。
你可以花费一个金币,激活任意一个 的陷阱。激活后,当某名敌人经过陷阱 时, 增加 时恰好变为 的倍数,那么此敌人的血量将会立刻变为 。
你想要知道,最少花费多少个金币,就能防止自己的脑子被敌人吃掉。如果无论如何激活陷阱都不可能,输出 。
Input Format
第一行,三个整数 , 和 (,,)。
第二行, 个整数 ()。
Output Format
输出仅一行一个整数,表示最少花费的金币数目。如果无论如何激活陷阱都不可能,输出 。
5 4 2
1 3 5 2 5
1
6 6 3
1 2 7 5 7 7
2
15 8 3
1 4 7 1 5 4 9 9 8 2 4 4 3 5 3
3
1 2 2
3
Zombies are on your lawn
20 10 3
10 6 6 2 11 11 8 6 3 11 10 4 11 5 3 5 2 9 10 5
3
Hint
对于第一组样例,只激活陷阱 是最优的。所有计数器 的情况如下:
- ;
- ;
- ;
- ;
- 。
对于第二组样例,其中一种最优方案是激活陷阱 和 。
对于第四组样例,无法保证你的脑子不被吃掉。
京公网安备 11011102002149号