当前位置: 首页 > news >正文

洛谷 B4416:[GESP202509 四级] 最长连续段 ← sort+unique

【题目来源】
https://www.luogu.com.cn/problem/B4416

【题目描述】
对于 k 个整数构成的数组 [b1, b2, …, bk],如果对 1≤i<k 都有 bi+1=bi+1,那么称数组 b 是一个连续段。
给定由 n 个整数构成的数组 [a1, a2, …, an],你可以任意重排数组 a 中元素顺序。请问在重排顺序之后,a 所有是连续段的子数组中,最长的子数组长度是多少?
例如,对于数组 [1,0,2,4],可以将其重排为 [4,0,1,2],有以下 10 个子数组:
[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] 以外的子数组均是连续段,因此是连续段的子数组中,最长子数组长度为 3。

【输入格式】
第一行,一个正整数 n,表示数组长度。
第二行,n 个整数 a1, a2, …, an,表示数组中的整数。

【输出格式】
一行,一个整数,表示数组 a 重排顺序后,所有是连续段的子数组的最长长度。

【输入样例】
9
9 9 8 2 4 4 3 5 3​​​​​​​

【输出样例】
4

【数据范围】
对于 40% 的测试点,保证 1≤n≤8。
对于所有测试点,保证 1≤n≤10^5,−10^9≤ai≤10^9。​​​​​​​

【算法分析】
已知数组 a 中的元素下标从 0 开始,若要利用 STL unique 函数将数组 a 中的 n 个元素去重后升序输出,需要经过以下三步:
1. 利用 sort(a,a+n); 函数对数组 a 中的 n 个元素进行排序。
2. 利用 unique(a,a+n)-a; 计算数组 a 中不重复元素的个数。切记,STL unique 函数并没有将重复的元素删去,而是依序排在了不重复元素的后面
3. 输出a[i],i=1 ~ unique(a,a+n)-a。

【算法代码】

#include <bits/stdc++.h>
using namespace std;const int maxn=1e5+5;
int a[maxn];int main() {int n;cin>>n;for(int i=0; i<n; i++) {cin>>a[i];}sort(a,a+n);int len=unique(a,a+n)-a;int cnt=1,imx=1;for(int i=1; i<len; i++) {if(a[i]-a[i-1]==1) {cnt++;imx=max(imx,cnt);} else cnt=1;}cout<<imx<<endl;return 0;
}/*
in:
9
9 9 8 2 4 4 3 5 3out:
4
*/




【参考文献】
https://blog.csdn.net/guolianggsta/article/details/152925085
https://gesp.ccf.org.cn/101/attach/1703973044092960.pdf
https://blog.csdn.net/hnjzsyjyj/article/details/146331059
https://blog.csdn.net/hnjzsyjyj/article/details/153268411
https://blog.csdn.net/hnjzsyjyj/article/details/127197232

 

http://www.jsqmd.com/news/47126/

相关文章:

  • Windows Server 2022 安装 SqlServer2000
  • RCTF pwn方向题解(缺bbox)
  • 第32天(简单题中等题 数据结构)
  • 2025年11月GEO公司谁专业?硬核测评TOP10终极对比
  • 2025年11月GEO公司终极对比:如何选?10家服务商全景解析
  • 2025年11月GEO公司谁专业?权威发布推荐对比
  • 2025年11月GEO公司全景报告:哪家强?十大服务商权威揭晓
  • 2025年11月GEO公司选择报告:哪个服务商实战案例更突出?
  • 【CI130x 离在线】Linux平台从命名管道接收PCM格式数据并转为WAV文件——Python脚本实现
  • 2025年11月GEO公司深度盘点:哪家强?TOP10热度榜权威揭晓
  • 2025年11月GEO服务商怎么选?终极对比TOP10推荐指南
  • CF1863D-Two-Colored Dominoes
  • 2025年11月GEO公司深度盘点:怎么选?十大服务商权威发布
  • 2025年11月GEO服务商怎么选?深度盘点TOP10专业解析
  • docker-- 遇到服务无法访问,排查记录
  • 4. 2025年11月GEO服务商深度盘点:十大专业机构对比分析与选择策略
  • 2025年11月GEO服务商选择指南:哪家好权威推荐
  • 2025年11月GEO服务商怎么选?终极对比TOP10评测报告
  • 苹果手机传文件到 windows 电脑
  • 飞书弹窗报错 Failed to load DLL from D:\installed_app\Feishu\app\frame.dll, System Error Code = 5
  • 11/21
  • Vision Transformer (ViT) 原理及解读
  • 2025.11.21
  • 关于Git的多分支使用
  • 高中数学核心素养记忆口诀,从简到难,方便您记忆和理解
  • 杂题选做 25.11
  • 【第8章 数据分析基础】让AI帮你可视化一个数据集
  • sam3 (2)开发 - MKT
  • P1719 最大加权矩阵
  • Python pyinstaller convert py file as *.exe file