[COCI 2023/2024 #3] Milano C.le

Luogu
IDLGP10225
Time1000ms
Memory512MB
DifficultyP3
动态规划 DP二分2023COCI(克罗地亚)Dilworth 定理
Silvia 目前在米兰中央车站,她注意到车站有很多站台。她觉得站台数量太多了,所以她打算统计有多少真正需要的站台。 Silvia 同样注意到这个车站的一个有趣的事实:出发和到达时刻表每两天就会重复一次,并且时刻表满足所有 $n$ 列火车在一天到达车站,并且在另一天离开。注意按这种方式,没有火车会在所有火车都到达之前离开。 车站的站台足够长,可以满足所有 $n$ 列火车都能在同一站台停成一列。然而,如果火车 $x$ 先进入站台,然后 $y$ 进入同一站台,则火车 $x$ 不可以在火车 $y$ 离开站台之前离开。 Silvia 想知道在不存在由于排在某列火车前面的火车还没离开导致这列火车无法离开的情况下,最少需要多少站台可以使所有火车都停下。 ## Input 第一行一个整数 $n\ (1\le n\le 2\cdot 10^5)$,表示火车的数量。 第二行包含 $n$ 个整数 $a_i\ (1\le a_i\le n,\forall i\neq j,a_i\neq a_j)$,表示第 $i$ 列火车在第一天第 $a_i$ 个到达车站。序列 $(a_i)$ 是一个排列。 第三行包含 $n$ 个整数 $b_i\ (1\le b_i\le n,\forall i\neq j,b_i\neq b_j)$,表示第 $i$ 列火车在第二天第 $b_i$ 个离开车站。序列 $(b_i)$ 是一个排列。 ## Output 输出一行一个整数,表示最少需要多少个站台。 [samples] ## Background **译自 [COCI 2023/2024 Contest #3](https://hsin.hr/coci/archive/2023_2024) T3「[Milano C.le](https://hsin.hr/coci/archive/2023_2024/contest3_tasks.pdf)」** ## Note ### 样例解释 2 ![](https://cdn.luogu.com.cn/upload/image_hosting/4ol0mhxg.png) 上图展示了一个样例二中站台上可能的列车调度情况。列车上 $(i:a_i/b_i)$ 的标签表示第 $i$ 列火车在第一天第 $a_i$ 个到达车站,然后在第二天第 $b_i$ 个离开车站。火车 $(2:1/2)$ 不能比火车 $(4:5/1)$ 更早离开车站。 ### 样例解释 3 所有火车均可在同一站台排成一列,没有任何问题。 ### 子任务 | 子任务 | 附加限制 | 分值 | | :--------: | :----------------------------------: | :--: | | $1$ | $n\le 10$ | $21$ | | $2$ | 最小所需站台数要么是 $1$,要么是 $2$ | $18$ | | $3$ | $n\le 1\ 000$ | $31$ | | $4$ | 无附加限制 | $40$ |
Samples
Input #1
5
3 5 2 4 1
3 2 5 1 4
Output #1
2
Input #2
5
3 1 2 5 4
4 2 3 1 5
Output #2
4
Input #3
3
3 2 1
1 2 3
Output #3
1
API Response (JSON)
{
  "problem": {
    "name": "[COCI 2023/2024 #3] Milano C.le",
    "description": {
      "content": "Silvia 目前在米兰中央车站,她注意到车站有很多站台。她觉得站台数量太多了,所以她打算统计有多少真正需要的站台。 Silvia 同样注意到这个车站的一个有趣的事实:出发和到达时刻表每两天就会重复一次,并且时刻表满足所有 $n$ 列火车在一天到达车站,并且在另一天离开。注意按这种方式,没有火车会在所有火车都到达之前离开。 车站的站台足够长,可以满足所有 $n$ 列火车都能在同一站台停成一列。",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P3"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP10225"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Silvia 目前在米兰中央车站,她注意到车站有很多站台。她觉得站台数量太多了,所以她打算统计有多少真正需要的站台。\n\nSilvia 同样注意到这个车站的一个有趣的事实:出发和到达时刻表每两天就会重复一次,并且时刻表满足所有 $n$ 列火车在一天到达车站,并且在另一天离开。注意按这种方式,没有火车会在所有火车都到达之前离开。\n\n车站的站台足够长,可以满足所有 $n$ 列火车都能在同一站台停成一列。...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments