题意:要制作n个药,初始制作一个药的时间为x,魔力值为s,有两类咒语可以加速,一类有m种咒语,每种咒语使制作一个药的时间变成a[i],花费b[i]的魔力,二类有k种咒语,每种咒语瞬间产生c[i]个药,花费d[i]的魔力,c[i]和d[i]都是不递减的,求最短时间内产生n个药的时间。
分析:总花费的时间ans=(n-c[j])*a[i],b[i]+d[j]<=s,由于第二类咒语使不递减的,所以可以枚举第一类咒语,然后二分第二类咒语,保证魔力值非负,在相同耗魔的符咒取产生药数量多的符咒。
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include
#include
#include
#include
#include
#include
#include
#include
#include