[HNOI2002]Tinux系统
在 DOS 系统诞生以前,美国曾研究出一种类似的操作系统,名为 Tinux 系统。该系统由 Tiger 博士为美国军方研制,其文件存储结构与 DOS 系统类似,可以表示为一棵树:每个叶子节点表示一个文件,每个非叶子节点表示一个目录。
从根目录开始访问某个目录时,在到达该目录之前需要经过 个目录,则称该目录为 级子目录。因此,根目录下的目录称为一级子目录,其余目录依此类推。
受硬件限制,每个目录下最多只能存储 个文件或子目录,即树中的每个非叶子节点最多有 个子节点。访问一个文件时,通常需要先依次访问它的所有上级目录。例如,要访问文件 ,必须先访问其一级上级目录 和二级上级目录 。
Tinux 系统为每个目录分配了 个指针,分别指向该目录下的文件或子目录,因此对文件和目录的访问实质上是对指针的访问。由于硬件原因,这 个指针的访问时间不同,访问第 个指针所需的时间为 。所有目录均使用相同的 种指针。
Tinux 系统在访问一个目录时,必须将该目录及其各级子目录下的所有文件读入内存。若指向某个目录的是第 个指针,并且该目录及其各级子目录下共有 个文件,则访问该目录所需的时间为 。
单独访问一个文件所需的总时间,等于访问其所有上级目录(不包括根目录)所需的时间,加上访问指向该文件的指针所需的时间。例如,访问文件 所需的时间为:访问目录 的时间、访问目录 的时间,以及访问指向文件 的指针所需时间之和。
现在,Tiger 博士准备将 个文件存储到一个空的 Tinux 系统中。请设计一种最优的存储方案,使得分别单独访问这 个文件所需时间的总和最小。
输入格式
第一行包含两个正整数 。
接下来 行,第 行包含一个正整数 ,表示每个目录中第 个指针的访问时间。
输出格式
输出一个整数,表示在最优存储方案下,分别访问这 个文件所需时间的总和。
样例输入
4 3
3
5
4
样例输出
28
数据范围
- ;
- ;
- ;
- 保证答案小于 。
来源与许可
本题为 HNOI 2002 试题「Tinux 系统」,题面与测试数据整理自 BZOJ。
样例 1
输入
4 3
3
5
4
输出
28