[信息与未来 2017] 任务调度

题目描述

乌龟因为动作太慢,有 $n$ 个任务已经超过截止日期 了。乌龟处理第 $i$ 个任务需要 $a_i$ 单位时间。从 $0$ 时刻开始,乌龟可以选择某项任务,完成它,然后再开始另一项任务,如此往复直到所有任务都被完成。 由于已经超过截止日期,乌龟会为此受到一定的惩罚,惩罚值等于所有任务完成时刻之和。例如,有 2 个 任务分别需要 $10$ 和 $20$ 单位时间完成。如果先完成任务 1,惩罚值为 $10+30=40$;如果先完成任务 2,惩罚值为 $20+30=50$。 乌龟希望你求出惩罚值最小的完成任务的顺序。 --- 试题中使用的生成数列 $R$ 定义如下:整数 $0\leq R_1\lt 201701$ 在输入中给出。 对于 $i\gt 1,R_i=(R_{i−1}\times 6807+2831)\mod 201701$。

输入输出格式

输入格式


两个整数 $n,R_1$,表示任务的数量和生成数列的首项。处理任务 $i(1\leq i\leq n)$ 的时间 $a_i=(R_i\bmod 100)+1$。

输出格式


一个整数,表示完成所有任务的最小惩罚值。

输入输出样例

输入样例 #1

10 2

输出样例 #1

1641

说明

对于 $100\%$ 的数据,$1\leq n\leq10^3$。 >本题原始满分为 $15\text{pts}$。