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

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

题目描述

乌龟因为动作太慢,有 nn 个任务已经超过截止日期 了。乌龟处理第 ii 个任务需要 aia_i 单位时间。从 00 时刻开始,乌龟可以选择某项任务,完成它,然后再开始另一项任务,如此往复直到所有任务都被完成。

由于已经超过截止日期,乌龟会为此受到一定的惩罚,惩罚值等于所有任务完成时刻之和。例如,有 2 个 任务分别需要 10102020 单位时间完成。如果先完成任务 1,惩罚值为 10+30=4010+30=40;如果先完成任务 2,惩罚值为 20+30=5020+30=50

乌龟希望你求出惩罚值最小的完成任务的顺序。


试题中使用的生成数列 RR 定义如下:整数 0R1<2017010\leq R_1\lt 201701 在输入中给出。

对于 i>1,Ri=(Ri1×6807+2831)mod201701i\gt 1,R_i=(R_{i−1}\times 6807+2831)\mod 201701

输入格式

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

输出格式

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

10 2
1641

提示

对于 100%100\% 的数据,1n1031\leq n\leq10^3

本题原始满分为 15pts15\text{pts}