题库/G4020

#G4020. [GESP202509 四级] 最长连续段

    传统题 难度: 普及− 标签>GESPGESP四级排序去重连续序列
时间限制1000 ms
内存限制512 MiB
通过率100%1 / 1 次提交
题目描述 查看题解 开始编程Alt+E

G4020 · [GESP202509 四级] 最长连续段

退出在线编程模式
普及− 读懂题意,让每一次思考成为成长。
时间限制1000 ms
内存限制512 MiB
通过率100%1 / 1 次提交

对应的选择、判断题:https://ti.luogu.com.cn/problemset/1192

对于 kk 个整数构成的数组 [b1,b2,…,bk][b_1, b_2, \ldots, b_k],如果对 1≤i<k1 \leq i < k 都有 bi+1=bi+1b_{i+1} = b_i + 1,那么称数组 bb 是一个连续段。

给定由 nn 个整数构成的数组 [a1,a2,…,an][a_1, a_2, \ldots, a_n],你可以任意重排数组 aa 中元素顺序。请问在重排顺序之后,aa 所有是连续段的子数组中,最长的子数组长度是多少?

例如,对于数组 [1,0,2,4][1, 0, 2, 4],可以将其重排为 [4,0,1,2][4, 0, 1, 2],有以下 1010 个子数组:

$$[4], [0], [1], [2], [4, 0], [0, 1], [1, 2], [4, 0, 1], [0, 1, 2], [4, 0, 1, 2]$$

其中除 [4,0],[4,0,1],[4,0,1,2][4, 0], [4, 0, 1], [4, 0, 1, 2] 以外的子数组均是连续段,因此是连续段的子数组中,最长子数组长度为 3。

输入格式

第一行,一个正整数 nn,表示数组长度。

第二行,nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n,表示数组中的整数。

输出格式

一行,一个整数,表示数组 aa 重排顺序后,所有是连续段的子数组的最长长度。

4
1 0 2 4
3
9
9 9 8 2 4 4 3 5 3
4

说明与数据范围

对于 40%40\% 的测试点,保证 1≤n≤81 \leq n \leq 8。

对于所有测试点,保证 1≤n≤1051 \leq n \leq 10^5,−109≤ai≤109-10^9 \leq a_i \leq 10^9。

来源与评测数据

GESP C++ 4级,2025年09月第2题。

本题含8个自行生成的测试点,非官方原版测试数据;每题总分100分。

题目信息

#716
100%

1 次通过 · 1 次提交

练习难度 普及−
时间限制
1000ms
内存限制
512MiB

题目标签

暂无标签
上传者