U441615 DPS(florr)

题目背景

众所周知,j2是一名florrer。 某天,j2想知道自己的平均DPS,但是她又不想去Jungle找训练假人,于是她要求你写一份DPS计算器。

题目描述

在florr中,玩家需要使用花瓣组合出合理的构筑,与队友配合并消灭生物。 玩家装备的花瓣和生物都是实体。 每个实体有两种基本属性:伤害(Damage)和生命值(Health)。当生命值小于等于零时,实体会消失。 当两个实体发生碰撞时,则会发生战斗。双方的生命值各减去对方的伤害,重复这个过程,直到其中至少一方死亡。 例: 使用10血量10伤害的花瓣与15血量5伤害的生物接触 花瓣受到5点伤害,对生物造成10点伤害 花瓣剩余血量5 生物剩余血量5 花瓣受到5点伤害进入冷却,对生物造成10点伤害 生物死亡 实际上,在游戏中这两次碰撞表现更像一次碰撞,但确实进行了两次碰撞 ~~如果花瓣与生物持续接触,将会在每一游戏刻造成一次伤害。~~ 如果花瓣血量全部消耗,将会消失并进入冷却状态。冷却状态结束后将会重新出现。 (在j2的任务中,为了简化,所有的碰撞及伤害计算是在一瞬间全部完成的,并且不考虑毒伤,暴击等。保证j2的花瓣可以在攻击怪物时完全消耗完并且直到冷却结束才可能再次碰到怪物(即不会像Rice或Corn一样)) (改自Florrio维基) 怪物的血量可以认为是无穷大,无视护甲(己方或敌方的)。现在给出怪物伤害$D$和每个花瓣的伤害$d_i$,生命值$h_i$和冷却$c_i$(秒),求无限攻击时DPS的平均值。 注:DPS是Damage Per Second,即每秒的伤害。

输入格式

第一行两个整数,分别为$D$和花瓣总数$n$。 第2至n+1行每行3个整数,第i行分别为$h_{i-1}$,$d_{i-1}$和$c_{i-1}$。

输出格式

一行一个实数(保留5位小数),表示j2的DPS。

说明/提示

$5\le n\le 10$ $1\le h_i,d_i,D\le 10^{6}$ $1\le c_i\le 100$ 这题j2犹豫了长达10s来决定颜色,最后让它成为了最水黄题(之一?)