AT_arc196_d.[ARC196D] Roadway

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

有 NN 个城镇,编号为 1,2,…,N1,2,\ldots,N,这些城镇按顺序排成一列。

此外,有 N−1N-1 条道路,每条道路连接相邻的两个城镇。第 jj 条道路(1≤j≤N−11\leq j\leq N-1)连接城镇 jj 和城镇 j+1j+1。你可以为每条道路 jj 设置一个强度 wjw_j(可以为负数的整数)。

当一个人通过一条道路时,他的体力会发生变化。具体来说,体力为 xx 的人在通过第 jj 条道路后,体力会变为 x+wjx+w_j。

接下来有 MM 个人要在城镇之间移动。

第 ii 个人(1≤i≤M1\leq i\leq M)从体力为 00 的状态下,从城镇 SiS_i 出发,沿最短路径前往城镇 TiT_i。这里保证 ∣Si−Ti∣>1|S_i-T_i|>1。另外,若 i≠ji\neq j,则 (Si,Ti)≠(Sj,Tj)(S_i,T_i)\neq (S_j,T_j)。

第 ii 个人的要求如下:

当他从城镇 SiS_i 出发和到达城镇 TiT_i 时,体力恰好为 00,在其他经过的城镇时,体力始终为正整数。

此外,除了通过道路导致的体力变化外,体力不会有其他变化。

请处理 QQ 个询问。对于第 kk 个询问(1≤k≤Q1\leq k\leq Q),如果存在一种道路强度的设置方法,能满足第 Lk,Lk+1,…,RkL_k,L_k+1,\ldots,R_k 个人的所有要求,则输出 Yes,否则输出 No。

输入格式

输入按以下格式从标准输入给出。

NN MM QQ
S1S_1 T1T_1
S2S_2 T2T_2
⋮\vdots
SMS_M TMT_M
L1L_1 R1R_1
L2L_2 R2R_2
⋮\vdots
LQL_Q RQR_Q

输出格式

输出 QQ 行。

第 kk 行输出 Yes,如果存在一种道路强度的设置方法,能满足第 Lk,Lk+1,…,RkL_k,L_k+1,\ldots,R_k 个人的所有要求;否则输出 No。

输入输出样例

  • 输入#1

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

    输出#1

    Yes
    No
  • 输入#2

    7 6 3
    1 5
    2 4
    4 6
    7 1
    5 3
    1 6
    1 6
    4 4
    2 5

    输出#2

    No
    Yes
    Yes

说明/提示

数据范围

  • 3≤N≤4×1053\leq N\leq 4\times 10^5
  • 1≤M≤2×1051\leq M\leq 2\times 10^5
  • 1≤Q≤2×1051\leq Q\leq 2\times 10^5
  • 1≤Si,Ti≤N1\leq S_i,T_i\leq N
  • ∣Si−Ti∣>1|S_i-T_i|>1
  • (Si,Ti)≠(Sj,Tj) (i≠j)(S_i,T_i)\neq (S_j,T_j)\ (i\neq j)
  • 1≤Lk≤Rk≤M1\leq L_k\leq R_k\leq M
  • 所有输入均为整数

样例解释 1

对于第 11 个询问,考虑将道路 1,2,3,41,2,3,4 的强度分别设置为 1,−1,1,−11,-1,1,-1。此时,第 11 个人从城镇 44 出发,体力为 00,到达城镇 33 时体力为 11,到达城镇 22 时体力为 00。第 22 个人从城镇 11 出发,体力为 00,到达城镇 22 时体力为 11,到达城镇 33 时体力为 00。第 33 个人从城镇 33 出发,体力为 00,到达城镇 44 时体力为 11,到达城镇 55 时体力为 00。因此,这种设置方法能满足第 1,2,31,2,3 个人的所有要求,所以第 11 行输出 Yes。对于第 22 个询问,不可能满足第 2,3,42,3,4 个人的所有要求,因此输出 No。

由 ChatGPT 4.1 翻译

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

首页