先介绍一下题目
题目背景
#警告:数据可能存在加强
题目描述
某次科研调查时得到了nnn个自然数,每个数均不超过1500000000(1.5×109)1500000000(1.5 \times 10^9)1500000000(1.5×109)。已知不相同的数不超过100001000010000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
输入格式
共n+1n+1n+1行。
第一行是整数nnn,表示自然数的个数;
第222至n+1n+1n+1每行一个自然数。
输出格式
共mmm行(mmm为nnn个自然数中不相同数的个数),按照自然数从小到大的顺序输出。
每行输出222个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
输入输出样例
输入 #1
8 2 4 2 4 5 100 2 100
输出 #1
2 3 4 2 5 1 100 2
你们以为我会用桶排,快排,排序,你们以为我在王境,错,我在帝境(我才不会告诉你我是因为桶排崩了才用的map)
注意题目背景,数据可能会加强,而且本蒟蒻就吃了数据太小的亏了,但本蒟蒻在STL库里发现了两个好东西,map和set,有了map,妈妈再也不用担心我RE了,set里会自动去重和排序,非常适合这道题
代码如下: