#ATagc065a. [AGC065A] Shuffle and mod K

[AGC065A] Shuffle and mod K

题目描述

给定一个长度为 NN 的整数序列 A=(A1,A2,,AN)A=(A_1,A_2,\dots,A_N)

你可以任意重新排列 AA。请你求出重新排列后 i=1N1((Ai+1Ai)modK)\sum_{i=1}^{N-1}((A_{i+1}-A_i)\bmod K) 可能取得的最大值。

这里,xmodKx\bmod K 表示满足 0y<K0\leq y<Kxyx-yKK 的倍数的整数 yy。例如,3mod8=5-3\bmod 8=59mod6=39\bmod 6=3

输入格式

输入以如下格式从标准输入读入。

NN KK A1A_1 A2A_2 \dots ANA_N

输出格式

请输出答案。

样例 1

输入

3 4
0 1 2

输出

6

样例 2

输入

7 123
11 34 56 0 32 100 78

输出

638

说明/提示

限制条件

  • 2N2×1052\leq N\leq 2\times 10^5
  • 1K1091\leq K\leq 10^9
  • 0Ai<K0\leq A_i<K

样例解释 1

最优的排列为 A=(2,1,0)A=(2,1,0),此时 (12)mod4+(01)mod4=3+3=6(1-2)\bmod 4+(0-1)\bmod 4=3+3=6

由 ChatGPT 4.1 翻译