AT_joi2025ho_e.郵便局 (Post Office)

通过率:0%

AC君温馨提醒

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

题目描述

在 JOI 国,有 NN 个邮局,编号从 11 到 NN。
每个邮局都被分配了一个“目的地”,邮局 ii 的目的地是邮局 PiP_i。注意,允许 Pi=iP_i = i。
如果某个包裹在时间 tt 从邮局 ii 发出,则会在时间 t+1t+1 到达邮局 PiP_i。不过,在传送包裹期间,邮局不能同时传递另外一个包裹。
每个邮局在任何时刻都可以无限量储存包裹。

现在,JOI 国需要传送 MM 个包裹。
第 jj 个包裹在时间 00 到达邮局 AjA_j,最终必须送到指定的邮局 BjB_j。
给定所有邮局的目的地信息以及所有包裹的信息,请编写程序判断是否能够将全部包裹传送到各自的指定邮局。如果可以,请输出所有包裹到达目的地的最短可能时间(即最后一个包裹到达的最早时间)。

输入格式

请从标准输入中读取以下数据:

NN P1P_1 P2P_2 ⋯\cdots PNP_N MM A1A_1 B1B_1 A2A_2 B2B_2 ⋮\vdots AMA_M BMB_M

输出格式

请输出一行到标准输出。如果所有包裹都能被送达到指定邮局,输出最后一个包裹到达目的地的最早时间,否则输出 -1。

输入输出样例

  • 输入#1

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

    输出#1

    3
  • 输入#2

    3
    2 1 3
    1
    1 3

    输出#2

    -1
  • 输入#3

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

    输出#3

    5
  • 输入#4

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

    输出#4

    4
  • 输入#5

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

    输出#5

    5
  • 输入#6

    11
    3 1 2 5 6 7 8 4 4 5 10
    6
    2 1
    9 8
    11 8
    10 4
    5 6
    5 7

    输出#6

    6

说明/提示

子任务

1.(33 分)N≤3 000N \leq 3\,000,M=1M = 1。
2.(99 分)N≤3 000N \leq 3\,000,M≤3 000M \leq 3\,000。
3.(1313 分)P=(1,1,2,⋯ ,N−1)P = (1, 1, 2, \cdots, N-1),且 max⁡(B1,B2,…,BM)<min⁡(A1,A2,…,AM)\max(B_1, B_2, \dots, B_M) < \min(A_1, A_2, \dots, A_M)。
4.(2525 分)P=(1,1,2,⋯ ,N−1)P = (1, 1, 2, \cdots, N-1)。
5.(1111 分)P=(N,1,2,⋯ ,N−1)P = (N, 1, 2, \cdots, N-1)。
6.(2525 分)P1=1P_1 = 1,且 Pi<iP_i < i(2≤i≤N2 \leq i \leq N)。
7.(1414 分)无额外限制。


样例解释 1

例如,按照如下操作可以在时间 33 前将所有包裹送达各自的目的地:

  • 在时间 00,包裹 11、22、33 均在邮局 33。将包裹 22 送到邮局 22。
  • 在时间 11,包裹 22 在邮局 22,包裹 11 和 33 仍在邮局 33。从邮局 22 发包裹 22 到邮局 11,从邮局 33 发包裹 33 到邮局 22。
  • 在时间 22,包裹 22 在邮局 11,包裹 33 在邮局 22,包裹 11 仍在邮局 33。从邮局 22 发包裹 33 到邮局 11,从邮局 33 发包裹 11 到邮局 22。
  • 在时间 33,包裹 22 和 33 在邮局 11,包裹 11 在邮局 22。此时所有包裹均已送达。

因为不可能更早完成所有包裹的传送,所以应输出 33。

本样例输入满足子任务 2,3,4,6,72, 3, 4, 6, 7 的限制条件。


样例解释 2

无论如何传送,都无法从邮局 11 送包裹到邮局 33,所以输出 -1。

本样例输入满足子任务 1,2,71, 2, 7 的限制条件。


样例解释 3

本样例输入满足子任务 2,4,6,72, 4, 6, 7 的限制条件。


样例解释 4

本样例输入满足子任务 2,5,72, 5, 7 的限制条件。


样例解释 5

本样例输入满足子任务 2,6,72, 6, 7 的限制条件。


样例解释 6

本样例输入满足子任务 2,72, 7 的限制条件。

数据范围

  • 2≤N≤200 0002 \leq N \leq 200\,000。
  • 1≤M≤200 0001 \leq M \leq 200\,000。
  • 1≤Pi≤N1 \leq P_i \leq N(1≤i≤N1 \leq i \leq N)。
  • 1≤Aj,Bj≤N1 \leq A_j, B_j \leq N(1≤j≤M1 \leq j \leq M)。
  • Aj≠BjA_j \neq B_j(1≤j≤M1 \leq j \leq M)。
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页