蒟蒻的尊严被打得一败涂地14

题目背景

小T组织同学玩一个游戏。

题目描述

游戏规则如下:一共有 N 人参加小T的游戏,N 个人围成一圈,他们的编号分别为:1 号到 N 号。

1 号同学分别和 2 号以及 N 号同学相邻。

然后第 i 个同学会告诉小T一个自己的幸运数字 ai ,小T需要给第 i 个同学 aiai​ 颗颜色不同的珠子,且需要确保任意相邻的两人所拥有的珠子颜色​不能重复​。

由于小T的囊中羞涩,希望用尽可能少的珠子来完成这个游戏,请你用编程告诉他最少需要准备多少颗珠子。

输入格式

第一行有一个整数 N 。

第二行包含 N 个整数依次表示编号为 i 的人需要分配的珠子数,两数间用一个空格分隔。

输出格式

一个数,表示珠子不同颜色的最少种类。

样例数据

输入数据 1

4
2 2 1 1

输出数据 1

4
样例1解释:

假设不同颜色珠子编号为:1,2,3,4……

1号同学拿:1,2

2号同学拿:3,4

3号同学拿:1

4号同学拿:3

上述方案符合相邻人珠子颜色不重复的要求,且没有珠子数量更少的方案,故答案为4

输入数据 2

5
3 1 2 3 2

输出数据 2

6
样例 2 解释:

假设不同颜色珠子编号为:1,2,3,4……

1号同学拿:1,2,3

2号同学拿:4

3号同学拿:5,6

4号同学拿:1,2,3

5号同学拿:5,6

上述方案符合相邻人珠子颜色不重复的要求,且没有珠子数量更少的方案,故答案为6

数据范围

对于20%数据,1≤n≤1000

对于30%数据,n 为偶数

对于100%数据,1≤n≤2×104,1≤ai≤1051≤n≤2×104,1≤ai​≤105

C++开发者在寻求帮助或交流时,通常会关注技术深度、社区氛围以及持续学习的机会。对于有经验的开发者来说,参与专业社区或俱乐部可以提供宝贵的资源和交流平台。例如,IncrediClub作为一个聚集了大量C++开发者的平台,通过举办线上技术探讨会、海外专家圆桌论坛等活动,为开发者们提供了丰富的学习与交流机会[^1]。 在技术层面,C++开发者可能会遇到各种具体问题,从基础语法到高级特性如模板、多态、继承机制等。此外,设计模式的应用、STL容器的内部实现原理、内存管理策略以及编译器相关的错误排查也是常见的讨论话题[^2]。 加入专门的开发者俱乐部或参与相关技术讨论组不仅可以帮助解决日常编码中遇到的具体难题,还能够促进对行业最新趋势和技术的理解。这类社区往往鼓励成员分享自己的项目经验,并就复杂的技术点展开深入对话,这对于个人技能提升非常有帮助。 如果希望进一步深化自己的专业知识,或者寻找志同道合的技术伙伴共同成长,那么积极地参与到这样的专业社群中去是非常有益的选择之一。 ### 寻找合适的交流平台 - **专业社区**:加入像IncrediClub这样的专业C++开发者社区,可以获得最新的技术资讯、参与高质量的技术讨论。 - **在线论坛**:Stack Overflow、Reddit上的r/cpp等是解决具体编程问题的好地方。 - **GitHub**:参与开源项目不仅可以提高编码能力,还能与其他贡献者建立联系。 - **Meetup/线下活动**:参加本地或线上的技术聚会,直接与同行交流心得。 ### 提升个人影响力 - 分享知识:撰写博客文章、录制教程视频或是发表演讲都是展示自己专长的有效方式。 - 参与开源:为知名C++开源项目做贡献不仅能锻炼实战能力,也能增加曝光度。 - 建立脉:利用LinkedIn等职业社交网络维护良好的际关系网,有助于未来的职业发展。 ```cpp // 示例代码 - 使用vector的基本操作 #include <iostream> #include <vector> int main() { std::vector<int> vec; // 添加元素 for(int i = 0; i < 5; ++i) { vec.push_back(i); } // 输出vector中的元素 for(auto it = vec.begin(); it != vec.end(); ++it) { std::cout << *it << " "; } return 0; } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值