#P16652. [Ukiepc2016]Gondolas

[Ukiepc2016]Gondolas

题目描述

滑雪过程中最令人兴奋的部分,莫过于乘坐缆车登上山顶:穿过树林和云层,沿途欣赏各种迷人的景色。

山脚下的滑雪者自然迫不及待地想乘坐缆车。他们都准确地知道自己将在什么时刻到达缆车站。

缆车沿一条闭合轨道不停循环。从山脚到山顶需要 TT 分钟,从山顶返回山脚也需要 TT 分钟,因此缆车绕完整条轨道一周需要 2T2T 分钟。

一天开始时,能够安装在轨道上的缆车车厢数量有限。你可以任意决定这些车厢在环形轨道上的初始位置。

每个车厢可以同时搭载任意多名滑雪者。滑雪者到达山脚后,会乘坐下一辆到达山脚的缆车。

请安排所有缆车的位置,使所有滑雪者等待时间之和最小。

输入格式

  • 第一行包含三个整数:
    • NN1N4001\le N\le 400),滑雪者人数;
    • TT1T7201\le T\le 720),缆车从山脚到山顶所需的分钟数;
    • GG1G4001\le G\le 400),可用缆车车厢数。
  • 接下来 NN 行,每行包含一个整数 XX0X1060\le X\le 10^6),表示一名滑雪者到达山脚的时刻。输入顺序任意。

输出格式

输出一个整数,表示所有滑雪者等待时间之和的最小可能值。

一名滑雪者的等待时间,等于其到达山脚的时刻与下一辆可乘缆车从山脚出发的时刻之差。

样例 1

输入

4 10 2
0
15
30
45

输出

10

样例 2

输入

4 10 3
0
15
30
45

输出

5

样例 3

输入

5 16 3
16
7
5
8
1

输出

4