AT_tkppc4_2_k.時をかけるTMJN

通过率:0%

AC君温馨提醒

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

题目描述

TMJN 君非常喜欢看动漫。昨晚,他原计划要观看 NN 部动漫。这些动漫被编号为 11 到 NN,其中第 ii 部动漫的播放开始时间是 AiA_i,结束时间是 BiB_i。然而,由于太累,他一觉睡到了早上,错过了所有的动漫。不过,别担心,TMJN 君有时间回溯的能力!因此,他决定利用这项能力来补看这些动漫。不过,时间回溯会耗费大量体力,因此他希望尽量减少所需的回溯时间。

TMJN 君醒来的时间是 TT。他可以瞬间切换电视频道,但不能同时观看多部动漫。并且,一旦开始观看某部动漫,就必须从头看到尾,不能中途切换去看其他动漫。

请你计算出 TMJN 君需要的最小回溯时间,以及实现该目标的动漫观看顺序。

输入格式

输入将以如下格式提供:

NN TT A1A_1 B1B_1 A2A_2 B2B_2 ... AN−1A_{N-1} BN−1B_{N-1} ANA_N BNB_N

输出格式

输出分为 N+1N+1 行:

  • 第 1 行输出需要回溯的总时间的最小值。
  • 接下来的 NN 行,每行输出按照制定顺序观看的动漫编号。

如果有多种观看顺序都能达到最小回溯时间中的任意一种。

输入输出样例

  • 输入#1

    3 141
    5 9
    26 53
    58 97

    输出#1

    136
    1
    2
    3
  • 输入#2

    5 10
    0 10
    2 5
    6 9
    1 8
    5 7

    输出#2

    25
    2
    5
    3
    4
    1
  • 输入#3

    7 30
    1 15
    23 25
    13 21
    0 5
    18 20
    4 11
    19 22

    输出#3

    47
    6
    4
    1
    3
    5
    7
    2

说明/提示

约束条件

  • 所有输入均为整数。
  • 1≤N≤1051 \leq N \leq 10^5
  • 1≤T≤1091 \leq T \leq 10^9
  • 0≤Ai0 \leq A_i

子任务

题目包含 33 个子任务:

  1. (250 分)对于所有 i,ji, j(i≠ji \neq j),不存在 Ai≤AjA_i \leq A_j 的情况,表示任意两部动漫不会同时播放。
  2. (250 分)满足 A1=0,B1=TA_1 = 0, B_1 = T。
  3. (500 分)无附加约束。

示例解释 1

按照动漫 11、动漫 22、动漫 33 的顺序观看时,所需回溯的总时间为 136136。没有比这个更短的回溯时间了。注意,此输入示例满足子任务 11 的条件。

示例解释 2

例如,按照动漫 22、动漫 55、动漫 33、动漫 44、动漫 11 的顺序观看时,所需回溯的总时间为 2525。没有比这个更短的回溯时间了。注意,此输入示例满足子任务 22 的条件。

本翻译由 AI 自动生成

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

首页