AT_abc363_g.[ABC363G] Dynamic Scheduling

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定长度为 NN 的数列 D=(D1, D2, …, DN), P=(P1, P2, …, PN)D=(D_1,\ D_2,\ \dots,\ D_N),\ P=(P_1,\ P_2,\ \dots,\ P_N)。

请按顺序处理 QQ 个查询。每个查询的格式如下:

  • c x y :将 DcD_c 改为 xx,将 PcP_c 改为 yy。然后,解决以下问题并输出答案。

有 NN 个编号为 11 到 NN 的工作。
你从今天(记为第 11 天)开始,每天可以选择 11 个工作完成,连续进行 NN 天。
如果在第 DiD_i 天之前(含第 DiD_i 天)完成第 ii 个工作,可以获得 PiP_i 的报酬。(如果没有在 DiD_i 天之前完成,则没有报酬)
请你选择完成工作的顺序,使得可以获得的报酬总和最大,并输出该最大值。

输入格式

输入按以下格式从标准输入给出。这里 queryi\mathrm{query}_i 表示第 ii 个查询。

NN QQ D1D_1 D2D_2 …\dots DND_N P1P_1 P2P_2 …\dots PNP_N
query1\mathrm{query}_1
query2\mathrm{query}_2
⋮\vdots
queryQ\mathrm{query}_Q

每个查询的格式如下:

cc xx yy

输出格式

输出 QQ 行。第 ii 行输出第 ii 个查询的答案。

输入输出样例

  • 输入#1

    3 2
    1 2 3
    3 6 3
    3 1 4
    2 3 9

    输出#1

    10
    13
  • 输入#2

    5 1
    1 2 3 4 5
    1000000000 1000000000 1000000000 1000000000 1000000000
    1 1 1000000000

    输出#2

    5000000000
  • 输入#3

    10 10
    6 2 4 1 5 1 6 6 5 3
    45 65 71 52 86 52 48 60 40 98
    5 6 5
    8 4 34
    6 7 83
    1 3 21
    7 5 85
    7 4 51
    8 2 81
    2 7 54
    6 1 5
    8 6 30

    输出#3

    394
    379
    462
    457
    459
    414
    443
    479
    401
    396

说明/提示

数据范围

  • 1≤N≤1051 \leq N \leq 10^5
  • 1≤Q≤1051 \leq Q \leq 10^5
  • 1≤Di≤N1 \leq D_i \leq N
  • 1≤Pi≤1091 \leq P_i \leq 10^9
  • 1≤c≤N1 \leq c \leq N
  • 1≤x≤N1 \leq x \leq N
  • 1≤y≤1091 \leq y \leq 10^9
  • 输入的所有值均为整数

样例解释 1

第 11 个查询如下:

  • 将 D3D_3 改为 11,P3P_3 改为 44。此时 D=(1,2,1), P=(3,6,4)D = (1, 2, 1),\ P = (3, 6, 4)。
  • 在子问题中,按如下顺序完成工作是最优方案之一:第 11 天做工作 33,第 22 天做工作 22,第 33 天做工作 11,此时报酬总和为 1010,因此输出 1010。

第 22 个查询如下:

  • 将 D2D_2 改为 33,P2P_2 改为 99。此时 D=(1,3,1), P=(3,9,4)D = (1, 3, 1),\ P = (3, 9, 4)。
  • 在子问题中,按如下顺序完成工作是最优方案之一:第 11 天做工作 33,第 22 天做工作 11,第 33 天做工作 22,此时报酬总和为 1313,因此输出 1313。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页