loj#P2849. 「ROI 2018 Day 2」机器人马拉松

「ROI 2018 Day 2」机器人马拉松

题目描述

译自 ROI 2018 Day2 T3. Робомарафон (Robomarathon)

NN 名机器人选手参加马拉松,选手的编号分别为 1N1\ldots N。跑道包含 NN 条分道,编号分别为 1N1\ldots N。每位选手占据一条分道,ii 号选手(简称 ii 号)占据编号为 ii 的分道(简称 ii 道)。每条分道从起点到终点的路程均相同。已知 ii 号跑完全程需要 aia_i 秒。

每条分道的起始点有一个发令喇叭,不过不是播声音的。裁判皮了一下,把有些分道上的发令喇叭关掉了。

时辰一到,所有开着的发令喇叭会同时发出起跑信号(下文简称发炮)。如果 ii 道上发炮,ii 号会立即起跑。

发令信号的传递速度为每秒钟 1 道。举个例子,如果有且只有四道上发炮,那么一秒后三号和五号会收到信号并立即起跑;两秒后二号和六号会收到信号并立即起跑。假设 ii 号在第 xix_i 秒起跑,则他会在第 fi=f_i = ai+xia_i + x_i 秒冲线。

我们按照冲线顺序给选手排名。比如,如果 n=3,n=3, f1=f_1= f2=f_2= 4,4, f3=f_3= 5,5, 那么一号和二号并列第一,三号屈居第三。

可见,选手的排名取决于发令喇叭的开关状态。请求出每位选手的最好名次或最差名次。

输入格式

第一行:n,p,n,p, p=1p=12,2, 11 表示你需要求出最好名次,22 表示你需要求出最差名次。
第二行:a1ana_1\ldots a_n

5 1
8 5 5 7 7
3
1
1
2
1
5 2
8 5 5 7 7
5
3
2
4
5

数据范围与提示

对于所有数据,0<ai1090<a_i\le 10^9

子任务 # 分值 测试点数量 nn⩽ p=p= 计分方式
1 10 2020 11 min
2  10  22
3 30  30  4×1054\times 10^5 11 sum
4 50  50  22

子任务 #3 中,各测试点的大小:

测试点 n=n= 测试点 n=n= 测试点 n=n= 测试点 n=n= 测试点 n=n=
1 100 100 7 1.5×1041.5×10^4 13 7×1047×10^4 19 1.3×1051.3×10^5 25 2×1052×10^5
2 500 500 8 2×1042×10^4 14 8×1048×10^4 20 1.4×1051.4×10^5 26 2.4×1052.4×10^5
3 10001000 9 3×1043×10^4 15 9×1049×10^4 21 1.5×1051.5×10^5 27 2.8×1052.8×10^5
4 25002500 10 4×1044×10^4 16 9999999999 22 1.6×1051.6×10^5 28 3.2×1053.2×10^5
5 49994999 11 5×1045×10^4 17 1.1×1051.1×10^5 23 1.7×1051.7×10^5 29 3.6×1053.6×10^5
6 10410^4 12 6×1046×10^4 18 1.2×1051.2×10^5 24 1.8×1051.8×10^5 30 4×1054×10^5

子任务 #4 中,各测试点的大小:

测试点 n=n= 测试点 n=n= 测试点 n=n= 测试点 n=n= 测试点 n=n=
1 100100 11 25002500 21 3×1043\times 10^4 31 109999109999 41 2.2×1052.2\times 10^5
2 200200 12 30003000 22 3.5×1043.5\times 10^4 32 1.2×1051.2\times 10^5 42 2.4×1052.4\times 10^5
3 300300 13 40004000 23 4×1044\times 10^4 33 1.3×1051.3\times 10^5 43 2.6×1052.6\times 10^5
4 400400 14 49994999 24 4.5×1044.5\times 10^4 34 1.4×1051.4\times 10^5 44 2.8×1052.8\times 10^5
5 500500 15 75007500 25 5×1045\times 10^4 35 1.5×1051.5\times 10^5 45 3×1053\times 10^5
6 750750 16 10410^4 26 6×1046\times 10^4 36 1.6×1051.6\times 10^5 46 3.2×1053.2\times 10^5
7 10001000 17 1.25×1041.25\times 10^4 27 7×1047\times 10^4 37 1.7×1051.7\times 10^5 47 3.4×1053.4\times 10^5
8 12501250 18 1.5×1041.5\times 10^4 28 8×1048\times 10^4 38 1.8×1051.8\times 10^5 48 3.6×1053.6\times 10^5
9 15001500 19 2×1042\times 10^4 29 9×1049\times 10^4 39 1.9×1051.9\times 10^5 49 3.8×1053.8\times 10^5
10 19991999 20 2.5×1042.5\times 10^4 30 9999999999 40 2×1052\times 10^5 50 4×1054\times 10^5