#4792. 消灭怪物的最大数量

消灭怪物的最大数量

题目描述

你正在玩一款电子游戏,在游戏中你需要保护城市免受怪物侵袭。给定一个 下标从 0 开始 且大小为 nn 的整数数组 distdist ,其中 dist[i]dist[i] 是第 ii 个怪物与城市的 初始距离 (单位:千米)。

怪物以 恒定 的速度走向城市。每个怪物的速度都以一个长度为 nn 的整数数组 speedspeed 表示,其中 speed[i]speed[i] 是第 ii 个怪物的速度(单位:千米/分)。

你有一种武器,一旦充满电,就可以消灭 一个 怪物。但是,武器需要 一分钟 才能充电。武器在游戏开始时是充满电的状态,怪物从 第 0 分钟 时开始移动。

一旦任一怪物到达城市,你就输掉了这场游戏。如果某个怪物 恰好  在某一分钟开始时到达城市(距离表示为0),这也会被视为 ** 输掉**  游戏,在你可以使用武器之前,游戏就会结束。

返回在你输掉游戏前可以消灭的怪物的 最大 数量。如果你可以在所有怪物到达城市前将它们全部消灭,返回  nn

输入格式

第一行一个整数 nn

接下来两行,每行 nn 个空格分隔的整数分别表示 distdistspeedspeed 数组。

输出格式

一行一个整数表示答案。

示例 1:

3
1 3 4
1 1 1
3

解释:

第 0 分钟开始时,怪物的距离是 [1,3,4],你消灭了第一个怪物。

第 1 分钟开始时,怪物的距离是 [X,2,3],你消灭了第二个怪物。

第 3 分钟开始时,怪物的距离是 [X,X,2],你消灭了第三个怪物。

所有 3 个怪物都可以被消灭。

示例 2:

4
1 1 2 3
1 1 1 1
1

解释:

第 0 分钟开始时,怪物的距离是 [1,1,2,3],你消灭了第一个怪物。

第 1 分钟开始时,怪物的距离是 [X,0,1,2],所以你输掉了游戏。

你只能消灭 1 个怪物。

示例 3:

3
3 2 4
5 3 2
1

解释:

第 0 分钟开始时,怪物的距离是 [3,2,4],你消灭了第一个怪物。

第 1 分钟开始时,怪物的距离是 [X,0,2],你输掉了游戏。

你只能消灭 1 个怪物。

提示:

  • n==dist.length==speed.lengthn == dist.length == speed.length
  • 1<=n<=1051 <= n <= 10^5
  • 1<=dist[i],speed[i]<=1051 <= dist[i], speed[i] <= 10^5

SOURCE

消灭怪物的最大数量