小编Pra*_*mar的帖子

优化:Hackerearth Postman 软件工程师实习问题

你想买一台笔记本电脑。每台笔记本电脑都有两个参数:评级和价格。您的任务是在给定的价格范围内购买评分最高的笔记本电脑。给定 Q 任务,每个查询都包含所需的价格范围,您必须打印在该价格范围内可以购买的最高评价的笔记本电脑。

输入格式:

第一行包含 N 表示输入的数量。

以下 N 行包含 P&R,表示笔记本电脑的价格和范围。

下一行包含 Q,表示查询的数量。

以下 Q 行包含两个整数 X 和 Y,表示价格范围(含)。

输出格式:

对于每个任务 Q,打印范围内可以购买的最高评分。

如果在范围内找不到任何笔记本电脑,请打印 -1。

约束:

1 <= N,Q <= 10^6

0 <= R,P <= 10^9

1 <= X <= Y <= 10^9

时间限制:每个输入 6 秒

样本输入:

5
1000 300
1100 400
1300 200
1700 500
2000 600
3
1000 1400
1700 1900
0 2000
Run Code Online (Sandbox Code Playgroud)

示例输出:

400
500
600
Run Code Online (Sandbox Code Playgroud)

我的方法

  1. 构建(键,值)映射

  2. 而 Y--> X 做,

    迭代器 = map.find(Y)

    如果是迭代器,则 max_rating = …

c++ algorithm optimization dictionary

4
推荐指数
1
解决办法
2313
查看次数

标签 统计

algorithm ×1

c++ ×1

dictionary ×1

optimization ×1