2657 - 回合战

题目描述

Alita 出生在一个尚武的星球上。这个星球上的每个人都骁勇善战,为了提升大家的战斗力,每天这里都要举办很多次的具有这个星球特色的回合制战斗。

具体来说,这里因为一些极为特殊的原因,战斗是严格的回合制。即,战斗的两方轮流使用技能。

每一个技能使用时,都会产生两种效果:给对方强制扣除 A 点血量,给自己加上 B 点血量。每个人只有初始血量 S ,但是血量没有上限

每个人只有一个技能,每次战斗一旦开始,就会一直进行到双方有任意一方血量小于等于零。

在某一天的战斗中,Alita 遇到了 n 个对手。因为 Alita 为星球做出了巨大的贡献,出于对她的尊敬,她的对手们决定每一回合都让 Alita 先行动。

Alita 会从第 1 个到第 n 个,依次挑战这些对手。每回战斗结束之后,她都会把自己的血量回满再开始下一场。哪怕自己血条被清空了,她也能在战斗结束后自己复活。也就是说,Alita 与每个人之间的挑战均是独立的。

对于第 i对手,他的初始血量为 S_i ,技能每次扣除对方 A_i 点血,给自己恢复 B_i 点血。

Alita 的血量为S_0,技能每次扣除对方A_0点血,给自己恢复B_0点血。

现在 Alita 得知了所有这些信息。她想知道,最终她能打败多少人。

我们称 Alita 打败了一个人,当且仅当战斗可以结束,且战斗结束时,Alita 剩余血量大于零,而对方剩余血量小于等于零。

输入

第一行一个正整数n,表示对手个数(1<=n<=1000)

2 行,读入 S_0A_0B_0

3n+2 行,每行三个正整数。

i 行的三个数分别为 S_iA_iB_i

输出

一个正整数,表示 Alita 能打败的人数。

样例

输入

3
10 2 2
2 100 100
13 3 0
3 0 100

输出

2
说明

【数据范围】

我们设S=max(S_i),A=max(A_i),B=max(B_i)

对于 80\% 的数据,1<=S,A,B<=1000

对于 100\% 的数据,1<=S,A,B<=2 * 1091<=n<=1000

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 94
通过人数 6
金币数量 2 枚
难度 入门


上一题 下一题