#B. [NOI Online #1 提高组] 最小环

    Type: RemoteJudge 2000ms 250MiB

[NOI Online #1 提高组] 最小环

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

给定一个长度为 nn 的正整数序列 aia_i,下标从 11 开始编号。我们将该序列视为一个首尾相邻的环,更具体地,对于下标为 ii, j(ij)j(i \leqslant j) 的两个数 aia_i, aja_j,它们的距离为 min(ji,i+nj)\min(j-i, i+n-j)

现在再给定 mm 个整数 k1k_1, k2k_2,..., kmk_m,对每个 ki(i=1k_i(i=1, 22,..., m)m),你需要将上面的序列 aia_i 重新排列,使得环上任意两个距离为 kik_i 的数字的乘积之和最大。

输入格式

第一行两个正整数 nn, mm,表示序列长度与询问数。

接下来一行 nn 个正整数表示 aia_i

接下来 mm 行每行一个非负整数表示 kik_i

输出格式

mm 行,每行一个整数表示答案。

6 4
1 2 3 4 5 6
0
1
2
3
91
82
85
88

提示

输入输出样例 1 解释

  • k=0k=0 时:答案为每个数平方的和。
  • k=1k=1 时:一种最优方案:{3,1,2,4,6,5}\{3,1,2,4,6,5\}。答案为 $3 \times 1 + 1 \times 2 + 2 \times 4 + 4 \times 6 + 6 \times 5 + 5 \times 3 = 82$。
  • k=2k=2 时:一种最优方案:{3,6,1,4,2,5}\{3,6,1,4,2,5\}。答案为 $3 \times 1 + 1 \times 2 + 2 \times 3 + 6 \times 4 + 4 \times 5 + 5 \times 6 = 85$。
  • k=3k=3 时,一个合法的排列是 1,5,3,2,6,41,5,3,2,6,4 ,答案为 8888。注意这里答案不是 4444

数据范围与提示

对于所有测试数据:1mn2×1051 \leqslant m \leqslant n \leqslant 2 \times 10^50kn/20 \leqslant k \leqslant \lfloor n/2\rfloor1ai1051 \leqslant a_i \leqslant 10^5

测试点编号 nn \leqslant 特殊性质
1 1010
2 1818
3 3636 nn 为偶数且 m=1m=1k=2k=2
4,5 10001000 m10m \leqslant 10k=1k=1
6 5050 m10m \leqslant 10k2k \leqslant 2
7,8 30003000
9,10 2×1052 \times 10^5

国庆模拟赛2

Not Attended
Status
Done
Rule
OI
Problem
4
Start at
2025-10-1 14:00
End at
2025-10-1 18:00
Duration
4 hour(s)
Host
Partic.
52