CF2151C.Incremental Stay

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

Danimal Cannon, Zef - The Lunar Whale

⠀

你是一家博物馆的安保人员。

博物馆的大门既是入口,也是出口。每秒最多只能有一人通过大门。门上有一个传感器能够检测到有访客通过,但无法判别该访客的身份,也无法判断是进馆还是出馆。传感器在 2n2n 个不同的时刻 a1,a2,…,a2na_1, a_2, \ldots, a_{2n}(以秒为单位)检测到有人通过。

对于每个访客,他的停留时长等于离开时间减去进入时间。

现在博物馆已经关闭(馆内无访客),你想知道今天所有进入博物馆的访客们最大可能的总停留时长,也就是所有访客停留时长的最大可能和。第 00 秒时,博物馆也是关闭的。

出于安全考虑,馆内同时在馆人数也有上限,但你记不清具体限制了。对于每一个 kk,1≤k≤n1 \leq k \leq n,你都希望知道:假设最多允许 kk 名访客同时在馆内,今天最大可能的总停留时长是多少。

输入格式

每个测试包含多组数据。第一行包含一个整数 tt(1≤t≤1041 \leq t \leq 10^4),表示测试数据组数。

每组测试数据的第一行是一个整数 nn(1≤n≤2×1051 \leq n \leq 2 \times 10^5),表示传感器检测到 2n2n 个不同的时刻。

第二行给出 2n2n 个整数 a1,a2,…,a2na_1, a_2, \ldots, a_{2n}(1≤a1<a2<…<a2n≤1091 \leq a_1 < a_2 < \ldots < a_{2n} \leq 10^9),表示每次检测到有人通过门口时的时间(按严格递增顺序给出)。

保证所有测试数据中 nn 的总和不超过 2×1052 \times 10^5。

输出格式

对于每组测试数据,输出 nn 个整数:对于每一个 kk,1≤k≤n1 \leq k \leq n,输出假设最多允许 kk 名访客同时在馆内时,今天最大可能的总停留时长。

输入输出样例

  • 输入#1

    3
    1
    32 78
    2
    4 5 6 9
    4
    6149048 26582657 36124499 43993239 813829899 860114890 910238130 913669539

    输出#1

    46 
    4 6 
    78018749 1737022233 1845329695 3385003015

说明/提示

在第一个测试样例中,传感器在 3232 秒和 7878 秒时检测到活动。记住 kk 是馆内最多可同时容纳的人数。

  • 若 k=1k=1,最大可能的总停留时长为 4646,即访客 11 在 3232 秒进入,7878 秒离开。

在第二个测试样例中,传感器分别在第 44、55、66 和 99 秒检测到活动。

  • 若 k=1k=1,最大可能的总停留时长为 44,最优安排是访客 11 在 44 秒进入、55 秒离开,访客 22 在 66 秒进入、99 秒离开。
  • 若 k=2k=2,最大可能的总停留时长为 66,最优安排是访客 11 在 44 秒进入、99 秒离开,访客 22 在 55 秒进入、66 秒离开。

由 ChatGPT 5 翻译

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

首页