使用循环移位压缩序列
TypeScript
Medium
loops
任务 «使用循环移位压缩序列»
给定一个整数序列。需要找到通过循环移位原始序列并随后将连续相同的数字压缩为“数字 数量”格式后,所得到的压缩字符串的最小长度。例如,序列 [1,1,2,2,2] 压缩后变为 '1 2 2 3'。循环移位意味着我们可以将前几个元素移到末尾。需要遍历所有可能的移位(从 0 到 n-1),执行压缩,并找到所得字符串的最小长度(以字符为单位,包括空格)。如果长度相等,则选择编号最小的移位。限制条件:n ≤ 100,数字范围从 0 到 100。
输入格式
第一行包含一个整数 n (1 ≤ n ≤ 100) — 数字的数量。第二行包含 n 个以空格分隔的整数。
输出格式
输出两个数字:偏移量(从0开始)和压缩后的最小字符串长度,用空格分隔。
示例
示例 1
输入
3
1 2 3
输出
0 11
示例 2
输入
4
1 1 1 1
输出
0 3
示例 3
输入
6 3
1 -2 3 4 -5 6
输出
0 25
main.ts