#P50524. 「JOISC 2017 Day 2」火车旅行

「JOISC 2017 Day 2」火车旅行

题目描述

题目译自 JOISC 2017 Day2 T3「鉄道旅行 / Railway Trip

某条铁路线(非环线)有 NN 站,依次编号为 1N1\ldots N。这条线路上跑着 KK 类列车,编号为 1K1\ldots K。每种列车都是双向运行的。
这条铁路线上的每个车站都有个旅客流量,旅客流量是一个 K\le K 的正整数。车站 i(1iN)i(1\le i\le N) 的旅客流量为 LiL_iL1=LN=KL_1=L_N=K
jj 类列车 (1jK)(1\le j\le K) 在且只在旅客流量 j\ge j 的车站停车。 现有 QQ 名旅客,依次编号为 1Q1\ldots Q,旅客 k(1kQ)k(1\le k\le Q) 的起点是车站 AkA_k,终点是 BkB_k (1Ak,BkN)(1\le A_k, B_k\le N)。假设这些旅客只能靠这条铁路线移动。
对于每个旅客,求这名旅客的途中至少要停几次站(不含该旅客的起终点站)。保证同一名旅客的起点与终点不同。允许走回头路。

输入格式

第一行有三个整数 N,K,QN, K, Q,用空格分隔。
在接下来的 NN 行中,第 ii(1iN)(1\le i\le N) 有一个整数 LiL_i
在接下来的 QQ 行中,第 kk(1kN)(1\le k\le N) 有两个整数 Ak,BkA_k,B_k

输出格式

输出共 QQ 行,每行一个整数,表示旅客 kk 最少的停站次数。

样例 1

9 3 3
3
1
1
1
2
2
2
3
3
2 4
4 9
6 7
1
3
0

旅客 11 从车站 22 出发,可以直接坐 11 类车抵达车站 44。中途站只有车站 33。 旅客 22 从车站 44 出发,可以先坐 11 类车到车站 55,再换乘 22 类车坐到车站 11,再换乘 33 类车坐到车站 99。中途站为车站 5,1,85,1,8。 旅客 33 从车站 66 出发,直接坐 11 类车抵达车站 77

5 2 1
2
1
1
1
2
1 4
1

注意可以走过目的地,再走回来。

15 5 15
5
4
1
2
3
1
1
2
4
5
4
1
5
3
5
8 1
11 1
5 3
6 11
9 12
15 14
15 2
3 12
2 1
4 8
15 5
12 6
1 13
13 8
14 9
2
1
1
3
2
0
3
4
0
1
3
4
1
2
2

数据范围与提示

对于所有数据,2N105,1KN,1Q105,1LiK(1iN),1Ak,BkN,AkBk(1kQ)2\le N\le 10^5, 1\le K\le N, 1\le Q\le 10^5, 1\le L_i\le K(1\le i\le N), 1\le A_k, B_k\le N, A_k\not=B_k(1\le k\le Q)

Subtask # 分值 NN KK QQ
1 5 N100N\le 100 K100K\le 100 Q50Q\le 50
2 15
3 25 K20K\le 20
4 55

表格中留空的均无特殊限制。