Boxers

题意翻译

题目描述: 有$n$个拳击手,第$i$个拳击手的重量是$a_i$。 他们每个人都可以在比赛前将体重改变不超过1(体重不能等于零,也就是说,它必须保持正值)。,重量始终是整数。 你需要根据人数选择最大的拳击队,使得团队中每名拳击手的重量都是唯一的。 编写一个程序,对于给定的重量$a_i$,找出团队中最大可能的拳击手数量。经过一些改变后,所有拳击手的重量不超过150001。 输入格式: 第一行包含一个整数$n$($1\leq n\leq 150000$),即拳击手的数量。第二行包含$n$个整数$a_1$,$a_2$,...,$a_n$($1\leq ai\leq 150000$),其中$a_i$为第$i$个拳击手的重量。 输出格式: 输出团队中最大可能的人数。

题目描述

There are $ n $ boxers, the weight of the $ i $ -th boxer is $ a_i $ . 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 ​ $ a_i $ 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).

输入输出格式

输入格式


The first line contains an integer $ n $ ( $ 1 \le n \le 150000 $ ) — the number of boxers. The next line contains $ n $ integers $ a_1, a_2, \dots, a_n $ , where $ a_i $ ( $ 1 \le a_i \le 150000 $ ) is the weight of the $ i $ -th boxer.

输出格式


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 $ .