CF1203E.Boxers
普及/提高-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
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).
有 n 名拳击手,第 i 名拳击手的体重为 ai。每名拳击手在比赛前最多可将自身体重改变 1(体重不能变为零,即必须保持为正整数)。体重始终为整数。
需要选出人数最多的拳击队,使得队中所有拳击手的体重互不相同(即体重唯一)。
请编写一个程序,对于给定的当前体重值 ai,求出所能组成的最大人数的拳击队。
注意:某些拳击手在调整体重后,其体重可能达到 150001(但不会超过该值)。
输入格式
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.
第一行包含一个整数 n(1≤n≤150000)——拳击手的数量。
下一行包含 n 个整数 a1,a2,…,an,其中 ai(1≤ai≤150000)表示第 i 个拳击手的体重。
输出格式
Print a single integer — the maximum possible number of people in a team.
输出一个整数——团队中可能的最大人数。
输入输出样例
输入#1
4 3 2 4 1
输出#1
4
输入#2
6 1 1 1 4 4 4
输出#2
5
说明/提示
In the first example, boxers should not change their weights — you can just make a team out of all of them.
In the second example, one boxer with a weight of 1 can be increased by one (get the weight of 2), one boxer with a weight of 4 can be reduced by one, and the other can be increased by one (resulting the boxers with a weight of 3 and 5, respectively). Thus, you can get a team consisting of boxers with weights of 5,4,3,2,1.
在第一个例子中,拳击手的体重不应发生变化——您可以直接由所有拳击手组成一支队伍。
在第二个例子中,一名体重为 1 的拳击手可增加 1(体重变为 2),一名体重为 4 的拳击手可减少 1,另一名体重为 4 的拳击手可增加 1(最终体重分别为 3 和 5)。因此,您可以得到一支由体重为 5,4,3,2,1 的拳击手组成的队伍。
输入解题思路,AI测评打分。不知道怎么写?