#P15501. [ICPC 2025 APC] Gathering Sharks
[ICPC 2025 APC] Gathering Sharks
说明
你是一群生活在二维海洋中的 条鲨鱼的领袖。这些鲨鱼从左到右排列,每对相邻鲨鱼之间的距离为一个单位。
作为领袖,你希望所有鲨鱼聚集到一个公共点,形成一个群体。最初,没有两条鲨鱼属于同一个群体;对于每个 ,从左数第 条鲨鱼自成一组,其组号为 ,该组仅包含它自己。
为了实现目标,你可以命令鲨鱼执行 次以下操作。
- 你喊出一个整数 ,该整数需同时满足以下条件:
- 存在一个编号为 的组。
- 存在至少一个编号严格小于 的组。
- 然后,令 为严格小于 的最大现有组编号,编号为 的组中的所有鲨鱼同时移动到编号为 的组所在的位置,并且这两个组合并。
- 合并后的组编号为 ,编号为 的组不复存在。
所有鲨鱼以每单位时间一个单位距离的恒定速度移动。命令必须顺序执行,执行时间不重叠。一旦一个命令完成,下一个命令可以立即开始。
通过优化地命令鲨鱼 次,计算所有鲨鱼聚集到一个公共点所需的最短时间。
输入格式
输入的第一行包含一个整数 ()。第二行包含 个两两不同的整数 ()。
输出格式
输出所有鲨鱼聚集到一个公共点所需的最短时间。
4
3 2 4 1
4
9
1 2 4 5 7 8 3 6 9
17
提示
样例输入/输出 #1 的解释
你可以命令鲨鱼执行以下操作:
- 你喊出 。最左边的鲨鱼移动到左数第二条鲨鱼的位置,它们形成一个编号为 的组。这花费 单位时间。
- 你喊出 。右数第二条鲨鱼移动到编号为 的组的位置,它们形成一个编号为 的组。这花费 单位时间。
- 你喊出 。编号为 的组中的鲨鱼移动到最右边位置,形成一个四条鲨鱼的组。这花费 单位时间。
总时间为 。可以证明 单位时间是最优的。
翻译由 DeepSeek 完成
京公网安备 11011102002149号