AT_abc406_g.[ABC406G] Travelling Salesman Problem
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在数轴上,有你和 N 个商人。商人编号为 1,2,…,N。
开始时,你在坐标 0 处,商人 i 在坐标 Xi 处。此外,每个商人都持有一个物品,商人 i 持有的物品记为物品 i。
你的目标是按顺序接收物品 1,2,…,N。
你可以按任意顺序重复任意次数以下三种操作:
- 你自己移动 1 个单位长度。此操作的成本为 C。
- 选择一个商人,让选定的商人移动 1 个单位长度。此操作的成本为 D。
- 选择一个商人,设选定的商人为商人 i。如果你和商人 i 所在的坐标相同,并且你还没有从商人 i 那里收到物品,则从商人 i 那里接收物品 i。否则,不执行任何操作。此操作的成本为 0。
请找出达成目标所需的最小总成本。
此外,请找出在最小化达成目标所需总成本时,可以作为从每个商人处接收物品的坐标的一种可能方案。
输入格式
输入按以下格式从标准输入给出。
N C D
X1 X2 … XN
输出格式
输出 2 行。
第 1 行输出达成目标所需的最小总成本。
第 2 行按顺序输出 N 个整数 A1,A2,…,AN,以空格分隔。要求存在一个操作序列,使得在该操作序列中同时满足以下条件:
- 已达成目标,并且在达成目标的条件下,总成本是最小的。
- 对于所有满足 1≤i≤N 的整数 i,你是在坐标 Ai 从商人 i 处接收物品的。
输入输出样例
输入#1
3 2 3 1 -1 2
输出#1
10 0 0 2
输入#2
2 100000 60000 100000 -100000
输出#2
12000000000 0 0
输入#3
6 4 4 2 -1 5 -2 -2 2
输出#3
56 0 -1 -1 -2 -2 2
说明/提示
「数据范围」
- 1≤N≤2×105
- 1≤C,D≤105
- −105≤Xi≤105
- 输入的所有值均为整数
「样例 1 解释」
例如,通过如下操作,可以使总成本为 10 并达成目标。
- 让商人 1 从坐标 1 移动到坐标 0。此操作的成本为 3。
- 让商人 2 从坐标 −1 移动到坐标 0。此操作的成本为 3。
- 从商人 1 处接收物品 1。此操作的成本为 0。
- 从商人 2 处接收物品 2。此操作的成本为 0。
- 你从坐标 0 移动到坐标 1。此操作的成本为 2。
- 你从坐标 1 移动到坐标 2。此操作的成本为 2。
- 从商人 3 处接收物品 3。此操作的成本为 0。
无法以低于 10 的总成本达成目标。
输入解题思路,AI测评打分。不知道怎么写?