#P12545. [UOI 2025] Partitioning into Three
[UOI 2025] Partitioning into Three
Description
有 个非负整数 排成一个环形。环形顺序中相邻的数字为 和 , 和 ,, 和 , 和 。
将这些数字分成三个非空的组,使得每个数字恰好属于一个组,每组中的数字在环形排列中是连续的,并且各组数字之和的最大值与最小值之差最小。
Input Format
第一行包含一个整数 —— 排列的数字个数。
第二行包含 个非负整数 —— 环形排列的数字。
Output Format
第一行输出一个整数 —— 最优划分下各组数字之和的最大值与最小值之差。
第二行输出三个整数 , , —— 表示最优划分的三个组的边界索引,其中:
- 第一组为 ,
- 第二组为 ,
- 第三组为 $[a_{z}, a_{z+1}, \ldots, a_{n-1}, a_{n}, a_{1}, a_{2}, \ldots, a_{x-1}]$。
如果存在多个正确答案,输出任意一个均可。
4
1 2 3 4
1
1 3 4
7
1 6 1 0 5 3 2
0
2 3 6
8
3 1 4 1 5 9 2 6
1
3 6 8
Hint
在第三个样例中,最优划分如下:

此时,各组的数字之和分别为 、 和 。
评分标准
- ( 分):;
- ( 分):对于所有 ,;
- ( 分):存在一种划分使得所求差值为 ;
- ( 分):;
- ( 分):;
- ( 分):;
- ( 分):;
- ( 分):无额外限制。
翻译由 DeepSeek V3 完成
京公网安备 11011102002149号