立志用更少的代码做更高效的表达


There are n boxers, the weight of the i-th boxer is ai. Each of them can change the weight by no more than 1 before the competition (the weight cannot become equal to zero, that is, it must remain positive). Weight is always an integer number.

It is necessary to choose the largest boxing team in terms of the number of people, that all the boxers’ weights in the team are different (i.e. unique).

Write a program that for given current values ​ai will find the maximum possible number of boxers in a team.

It is possible that after some change the weight of some boxer is 150001 (but no more).

Input
The first line contains an integer n (1≤n≤150000) — the number of boxers. The next line contains n integers a1,a2,…,an, where ai (1≤ai≤150000) is the weight of the i-th boxer.

Output
Print a single integer — the maximum possible number of people in a team.

Input
4
3 2 4 1

Output
4

Input
6
1 1 1 4 4 4

Output
5


题意:有n个拳击运动员,每个人在比赛前可以改变一斤体重,询问比赛时最多能带几个不同体重的运动员。

思路:使用优先队列将序列降序排序(O(nlogn)), 然后定义a数组判断这个值是否出现过, 先判断+1, 然后判断该数,最后-1(-1的情况下不能为1)。

若想升序排序,则过程相反。

贪就完了


代码展示

#include<bits/stdc++.h>
using namespace std;
int a[150005];
int main() {ios::sync_with_stdio(false);int n; while(cin>>n) {priority_queue<int, vector<int>, less<int> >q;    //降序队列 for(int i = 0; i < n; i++) { int x; cin>>x;q.push(x);}memset(a, 0, sizeof(a));       //重置a数组 for(int i = 0; i < n; i++) {int x; x = q.top();if(a[x+1] == 0) a[x+1] = 1;else if(a[x]==0) a[x] = 1;else if(a[x-1]==0 && x!=1) a[x-1] = 1;q.pop();}int num=0;for(int i = 0; i < 150005; i++) {if(a[i] == 1)  num++;}cout << num << endl; /* */}
return 0; }

博主的碎碎念

时隔多天终于重拾ACM开始敲代码, 连EOF格式都用不熟练了, 汗-_-||,这道水题也是整整思考了一个小时才跌跌撞撞的A出来。 大家千万不要像我一样啊! 平时一定要跟住训练, 一日只练一日功,一日不练十日空!

Boxers CodeForces - 1203E (贪心解法)——26行代码AC相关推荐

  1. HDU-4850 Wow! Such String!(模拟) ——26行代码AC

    立志用更少的代码做更高效的表达 Recently, doge starts to get interested in a strange problem: whether there exists a ...

  2. 26行代码AC——习题3-2 分子量 (UVa1586,Molar Mass)——解题报告

    大意: 给出分子式,式中只包含以下四种元素.求分子量. C:12.01 H: 1.008 O: 16.00 N: 14.01 Sample Input 4 C C6H5OH NH2CH2COOH C1 ...

  3. 基于VC6.0的控制台作图--一个极坐标曲线图(26行代码)

    文章目录 先看MATLAB如何做 如果不用MATLAB呢? 单纯依靠C函数完成作图 再来几个例子 改画笔画刷(颜色.粗细.透明) 稍作变化 还能有比这更简单的C代码吗? 还可让图形动起来 附录: GD ...

  4. 26行代码实现自动检测苹果手机接入电脑并安装app

    26行代码实现检测到苹果手机接入电脑自动安装app 环境: ubuntu 18.04 需要事先准备的工具: ideviceinstaller ubuntu 18.04安装ideviceinstalle ...

  5. 12行代码AC——L1-058 6翻了(15分)

    立志用更少的代码做更高效的表达 "666"是一种网络用语,大概是表示某人很厉害.我们很佩服的意思.最近又衍生出另一个数字"9",意思是"6翻了&quo ...

  6. 15行代码AC——ZOJ - 4118 Stones in the Bucket(思维题+优化方案)(第十届山东省ACM程序设计竞赛F题)

    励志用少的代码做高效表达. 思路分析 题意:给定n个数,问最少操作几次,使数列中的数全部相等. 操作一:将数列中任意数减一. 操作二:将数列中任意数减一.任意数加一(相当于把1挪过去) 涉及到最少的题 ...

  7. 高效万进制——蓝桥杯|HDOJ 1002 大数加法——30行代码AC

    浅谈进制思想: 日常生活中我们习惯用十进制去运算: 为了方便电脑识别开发出了二进制,又因为2^3=8 , 2^4=16,因此应运而生了八进制与16进制. 世上本没有路,走的人多了,也便成了路,那么既然 ...

  8. 【简洁代码】1028 List Sorting (25 分)_26行代码AC

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 Excel can sort records according to any column. Now you are suppo ...

  9. 15行代码AC——1019 数字黑洞 (20分) 甲级1069. The Black Hole of Numbers (20)(解题报告)

    立志用更少的代码做更高效的表达 PAT甲级最优题解-->传送门 Pat乙级最优化代码+题解+分析汇总-->传送门 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非 ...

最新文章

  1. AAAI 2020论文解读:商汤科技提出新弱监督目标检测框架
  2. Python学习之路-装饰器生成器正则表达式
  3. JS获取客户端IP地址、MAC和主机名的7个方法汇总
  4. rpm出现error: %preun( ) scriptlet failed, exit status 1问题
  5. Pedestrian Identification (2) ——研究现状总结
  6. 想象力比知识更重要——专访首位吴文俊人工智能最高成就奖得主陆汝钤
  7. Python 创建随机mac地址(单播、组播)
  8. 百度推出Apollo 3.5和Apollo Enterprise
  9. vux和iview的弹出框总结
  10. Atitit 视频编码与动画原理attilax总结
  11. 二进位注册文件_指定的文件不是注册脚本注册表编辑器中只能导入二进位注册文。怎么办?...
  12. PN结原理和对三极管反向偏置能导通的思考
  13. 基于LSTM的短期股票预测
  14. Next数组个人理解
  15. 加入AI考拉大家庭,是一种怎样的体验?--来自考拉码农的心声
  16. 工业机器人组成结构【拆卸 / 组装 KUKA 工业机器人】
  17. 获取处于选中状态的checkbox的id值
  18. 万字详文告诉你如何做 Code Review!
  19. UNITY小白3D坦克大战制作学习笔记1
  20. 教你获取Microsoft Office 365E5账号

热门文章

  1. 浏览器标准模式与怪异模式-CSS1Compat and BackCompat
  2. 坐标转换软件---coordgm_xpgod
  3. ClickHouse 在爱奇艺视频生产实时数仓的应用
  4. Ubuntu16.04下安装QQ
  5. java border类_Swing BorderLayout类
  6. html5第十一课时,汇总
  7. 文件属性修改器(C#)
  8. java组合框单位换算_Visual C++开发实战1200例(第Ⅰ卷)
  9. 程序员你为什么这么累【续】:编码习惯之日志建议
  10. python图像特征提取进行分割_python实现图片处理和特征提取详解