QOJ.ac

QOJ

実行時間制限: 1 s メモリ制限: 1024 MB 満点: 100

#5308. RPG职业联赛

統計

国际计算机游戏公司(ICPC)最近正在筹划年度 RPG 职业联赛(RPL)。在 RPG 游戏中,有三种不同的角色:输出(Damager)、辅助(Synergier)和增益(Buffer)。一个队伍恰好由四名玩家组成。在 RPL 中,只允许以下两种类型的队伍:

  • 一名输出、两名辅助和一名增益。
  • 两名输出、一名辅助和一名增益。

在正式比赛前,ICPC 决定举办一场表演赛。共有 $n$ 名玩家,编号为 $1, 2, \dots, n$。第 $i$ 名玩家只能担任集合 $S_i$ 中的角色,邀请他参加表演赛的价格为 $p_i$ 美元。

你正在为 ICPC 工作。你的任务是选择邀请哪些玩家,使得他们能组成的有效队伍数量最多,且总成本最小。注意,一名玩家不能加入多个队伍。

不幸的是,玩家可能会随时调整他们的价格。你将收到 $q$ 个事件,在每个事件中,一名玩家的价格会发生变化。你的任务是在每次事件后,报告在最大化有效队伍数量的前提下的当前最小总成本。

输入格式

第一行包含一个整数 $n$ ($1 \le n \le 10^5$),表示玩家数量。

接下来的 $n$ 行,每行包含一个字符串 $S_i$ 和一个整数 $p_i$ ($1 \le |S_i| \le 3, 1 \le p_i \le 10^9$),表示第 $i$ 名玩家的角色集合和价格。$S_i$ 由 {'D', 'S', 'B'} 中的至多三个不同字符组成,分别代表输出(Damager)、辅助(Synergier)和增益(Buffer)。

下一行包含一个整数 $q$ ($1 \le q \le 10^5$),表示事件数量。

接下来的 $q$ 行,每行包含两个整数 $x_i$ 和 $y_i$ ($1 \le x_i \le n, 1 \le y_i \le 10^9$),表示第 $x_i$ 名玩家的价格变更为 $y_i$ 美元。

输出格式

输出 $q$ 行,第 $i$ 行 ($1 \le i \le q$) 包含一个整数,表示在第 $i$ 次事件后,最大化有效队伍数量时的最小总成本。

样例

样例输入 1

5
BS 3
D 3
B 2
D 4
D 5
2
5 2
1 5

样例输出 1

10
12

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.