CF1728F.Fishermen

NOI/NOI+/CTSC

通过率:0%

时间限制:6.00s

内存限制:512MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

There are nn fishermen who have just returned from a fishing trip. The ii-th fisherman has caught a fish of size aia_i.

The fishermen will choose some order in which they are going to tell the size of the fish they caught (the order is just a permutation of size nn). However, they are not entirely honest, and they may "increase" the size of the fish they have caught.

Formally, suppose the chosen order of the fishermen is [p1,p2,p3,…,pn][p_1, p_2, p_3, \dots, p_n]. Let bib_i be the value which the ii-th fisherman in the order will tell to the other fishermen. The values bib_i are chosen as follows:

  • the first fisherman in the order just honestly tells the actual size of the fish he has caught, so b1=ap1b_1 = a_{p_1};
  • every other fisherman wants to tell a value that is strictly greater than the value told by the previous fisherman, and is divisible by the size of the fish that the fisherman has caught. So, for i>1i \gt 1, bib_i is the smallest integer that is both strictly greater than bi−1b_{i-1} and divisible by apia_{p_i}.

For example, let n=7n = 7, a=[1,8,2,3,2,2,3]a = [1, 8, 2, 3, 2, 2, 3]. If the chosen order is p=[1,6,7,5,3,2,4]p = [1, 6, 7, 5, 3, 2, 4], then:

  • b1=ap1=1b_1 = a_{p_1} = 1;
  • b2b_2 is the smallest integer divisible by 22 and greater than 11, which is 22;
  • b3b_3 is the smallest integer divisible by 33 and greater than 22, which is 33;
  • b4b_4 is the smallest integer divisible by 22 and greater than 33, which is 44;
  • b5b_5 is the smallest integer divisible by 22 and greater than 44, which is 66;
  • b6b_6 is the smallest integer divisible by 88 and greater than 66, which is 88;
  • b7b_7 is the smallest integer divisible by 33 and greater than 88, which is 99.

You have to choose the order of fishermen in a way that yields the minimum possible ∑i=1nbi\sum\limits_{i=1}^{n} b_i.

有 nn 位渔民刚刚结束垂钓返回。第 ii 位渔民捕获了一条大小为 aia_i 的鱼。

这些渔民将选择一个顺序(即 nn 个渔民的一个排列)来依次报出自己所捕获鱼的大小。但他们并非完全诚实,可能会“夸大”自己所捕获鱼的大小。

形式化地,假设选定的渔民顺序为 [p1,p2,p3,…,pn][p_1, p_2, p_3, \dots, p_n]。令 bib_i 表示该顺序中第 ii 位渔民向其他人报出的数值。这些值 bib_i 按如下规则确定:

  • 顺序中第一位渔民如实报告自己所捕获鱼的实际大小,即 b1=ap1b_1 = a_{p_1};
  • 其余每位渔民都希望报出一个严格大于前一位渔民所报数值、且能被自己所捕获鱼的大小整除的数。因此,对 i>1i > 1,bib_i 是满足以下两个条件的最小整数:(1) 严格大于 bi−1b_{i-1};(2) 被 apia_{p_i} 整除。

例如,设 n=7n = 7,a=[1,8,2,3,2,2,3]a = [1, 8, 2, 3, 2, 2, 3]。若选定顺序为 p=[1,6,7,5,3,2,4]p = [1, 6, 7, 5, 3, 2, 4],则:

  • b1=ap1=1b_1 = a_{p_1} = 1;
  • b2b_2 是大于 11 且能被 22 整除的最小整数,即 22;
  • b3b_3 是大于 22 且能被 33 整除的最小整数,即 33;
  • b4b_4 是大于 33 且能被 22 整除的最小整数,即 44;
  • b5b_5 是大于 44 且能被 22 整除的最小整数,即 66;
  • b6b_6 是大于 66 且能被 88 整除的最小整数,即 88;
  • b7b_7 是大于 88 且能被 33 整除的最小整数,即 99。

你需要选择一个渔民顺序,使得 ∑i=1nbi\sum\limits_{i=1}^{n} b_i 的值尽可能小。

输入格式

The first line contains one integer nn (1≤n≤10001 \le n \le 1000) — the number of fishermen.

The second line contains nn integers a1,a2,…,ana_1, a_2, \dots, a_n (1≤ai≤1061 \le a_i \le 10^6).

第一行包含一个整数 nn(1≤n≤10001 \le n \le 1000)—— 渔民的数量。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤1061 \le a_i \le 10^6)。

输出格式

Print one integer — the minimum possible value of ∑i=1nbi\sum\limits_{i=1}^{n} b_i you can obtain by choosing the order of fishermen optimally.

输出一个整数——通过最优地选择渔民的顺序,所能得到的 ∑i=1nbi\sum\limits_{i=1}^{n} b_i 的最小可能值。

输入输出样例

  • 输入#1

    7
    1 8 2 3 2 2 3

    输出#1

    33
  • 输入#2

    10
    5 6 5 6 5 6 5 6 5 6

    输出#2

    165

输入解题思路,AI测评打分。不知道怎么写?

首页