AT_joisc2021_d.逃走経路 (Escape Route)

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

IOI 国的一天被划分为 SS 个单位时间(单位:皮秒)。每日起点开始经过 xx 皮秒 (0≤x<S)(0 \leq x < S) 的时刻称为时刻 xx。国家包含 NN 座城市(编号 00 至 N−1N-1)和 MM 条双向道路(编号 00 至 M−1M-1),任意两城市均可通过若干道路互通。

每条道路 ii (0≤i≤M−1)(0 \leq i \leq M-1) 具有以下属性:

  • 连接城市 AiA_i 与 BiB_i。
  • 通行耗时 LiL_i 皮秒。
  • 每日从时刻 CiC_i 至当日结束进行全路段检查。

JOI 团成员使用道路 ii 时,必须满足:

  • 在时刻 xx 从 AiA_i 或 BiB_i 出发,且 0≤x≤Ci−Li0 \leq x \leq C_i - L_i。
  • 在时刻 x+Lix + L_i 到达另一城市。
    (检查期间允许停留在 AiA_i 或 BiB_i)

现有 QQ 名成员(编号 00 至 Q−1Q-1):

  • 成员 jj 于某日时刻 TjT_j 从 UjU_j 出发前往 VjV_j。
  • 移动中可在城市等待(可能耗时多日)。

请计算每位成员从起点到终点的最小耗时。


实现细节

需实现以下函数:

#include "escape_route.h"
std::vector<long long> calculate_necessary_time(
    int N, int M, long long S, int Q,
    std::vector<int> A, std::vector<int> B,
    std::vector<long long> L, std::vector<long long> C,
    std::vector<int> U, std::vector<int> V, std::vector<long long> T
);

参数说明:

  • N:城市数量。
  • M:道路数量。
  • S:每日总皮秒数。
  • Q:成员数量。
  • A, B, L, C:长度为 MM 的数组,描述道路 ii(连接 AiA_i 与 BiB_i,耗时 LiL_i,检查开始时刻 CiC_i)。
  • U, V, T:长度为 QQ 的数组,描述成员 jj(从 UjU_j 于时刻 TjT_j 出发前往 VjV_j)。

返回值:

  • 长度为 QQ 的 long long 数组,其中 answer[j] 为成员 jj 的最小耗时。

输入格式

本题是交互题,详见实现细节。

输出格式

详见实现细节。

输入输出样例

  • 输入#1

    4 5 20 6  
    0 1 3 19  
    0 2 2 8  
    1 2 4 15  
    1 3 5 14  
    2 3 1 18  
    0 3 5  
    0 3 7  
    0 3 9  
    2 0 6  
    3 1 10  
    1 2 15  

    输出#1

    3  
    8  
    14  
    2  
    5  
    7

说明/提示

样例解释

  • 成员 00(耗时 33 皮秒):
    • 时刻 55:城市 00 → 道路 11(耗时 22)→ 城市 22(时刻 77)。
    • 时刻 77:城市 22 → 道路 44(耗时 11)→ 城市 33(时刻 88)。
  • 成员 22(耗时 1414 皮秒):
    • 在城市 00 等待至次日时刻 00。
    • 时刻 00:城市 00 → 道路 11(耗时 22)→ 城市 22(时刻 22)。
    • 时刻 22:城市 22 → 道路 44(耗时 11)→ 城市 33(时刻 33)。

数据范围

  • 2≤N≤902 \leq N \leq 90
  • N(N−1)≤M≤N(N−1)2N(N-1) \leq M \leq \dfrac{N(N-1)}{2}
  • 2≤S≤10152 \leq S \leq 10^{15}
  • 1≤Q≤3×1061 \leq Q \leq 3 \times 10^{6}
  • 0≤Ai,Bi,Uj,Vj≤N−10 \leq A_i, B_i, U_j, V_j \leq N-1
  • Ai≠BiA_i \neq B_i,Uj≠VjU_j \neq V_j
  • 1≤Li<S1 \leq L_i < S,Li≤Ci<SL_i \leq C_i < S
  • 0≤Tj<S0 \leq T_j < S
  • 图连通

子任务

  1. (55 分) N≤40N \leq 40,Q≤1000Q \leq 1000
  2. (2020 分) N≤40N \leq 40,所有 Uj=0U_j = 0
  3. (1010 分) N≤40N \leq 40
  4. (3535 分) N≤60N \leq 60
  5. (3030 分) 无特殊限制

本翻译由 Deepseek R1 大模型生成。

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

首页