AT_abc426_g.[ABC426G] Range Knapsack Query

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

有 NN 个物品,编号从 11 到 NN。第 ii 个物品的重量为 WiW_i,价值为 ViV_i。

你会得到 QQ 个查询,请按顺序处理它们。第 jj 个查询如下:

  • 给定整数 Lj,Rj,Cj (1≤Lj≤Rj≤N)L_j, R_j, C_j\ (1\leq L_j\leq R_j\leq N)。请你从物品 Lj,Lj+1,…,RjL_j, L_j+1, \dots, R_j 中选择若干(可以为零)个物品,使得总重量不超过 CjC_j,求所能获得的最大总价值。

输入格式

输入按如下格式从标准输入读入:

NN
W1W_1 V1V_1
W2W_2 V2V_2
⋮\vdots
WNW_N VNV_N
QQ
L1L_1 R1R_1 C1C_1
L2L_2 R2R_2 C2C_2
⋮\vdots
LQL_Q RQR_Q CQC_Q

输出格式

输出共 QQ 行,第 ii 行(1≤i≤Q1\leq i \leq Q)输出第 ii 个查询的答案。

输入输出样例

  • 输入#1

    4
    3 4
    5 8
    1 2
    2 3
    3
    1 4 7
    2 4 10
    1 2 2

    输出#1

    11
    13
    0
  • 输入#2

    8
    167 430302156
    22 623690081
    197 476190629
    176 24979445
    22 877914575
    247 211047202
    232 822804784
    25 628894325
    8
    6 8 176
    3 5 80
    1 7 310
    4 8 368
    4 5 218
    3 4 431
    4 6 228
    1 1 239

    输出#2

    628894325
    877914575
    2324409440
    2329613684
    902894020
    501170074
    902894020
    430302156

说明/提示

样例解释 1

对于第一个查询,在物品 1,2,3,41,2,3,4 中,若选择物品 2,42,4,总重量为 5+2=75+2=7,不超过 C1=7C_1=7,总价值为 8+3=118+3=11,已达最大值。

对于第二个查询,若选择所有物品 2,3,42,3,4,总重量为 5+1+2=85+1+2=8,不超过 C2=10C_2=10,总价值为 8+2+3=138+2+3=13。

对于第三个查询,物品 1,21,2 的重量都超过了 C3=2C_3=2,所以无法选择任何物品,最大总价值为 00。

数据范围

  • 1≤N≤2×1041\leq N \leq 2\times 10^4
  • 1≤Q≤2×1051\leq Q \leq 2\times 10^5
  • 1≤Wi≤5001\leq W_i \leq 500
  • 1≤Vi≤1091\leq V_i \leq 10^9
  • 1≤Lj≤Rj≤N1\leq L_j \leq R_j \leq N
  • 1≤Cj≤5001\leq C_j \leq 500
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页