解题思路
1.获取输入n
2.依次获取每个自然数,存放在a[n]中
3.数组a排序
4.统计数字次数:
如果a[i]==a[i+1],次数+1
否则(说明a[i]是当前数字出现的最后一次),输出a[i]和当前次数,然后将次数重置为1
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n];
int count=1;//出现次数,初始为1
//依次获取n个自然数
for (int i = 0; i < n; ++i)
{
cin>>a[i];
}
//排序
sort(a,a+n);
//统计数字次数
for (int i = 0; i < n; ++i)
{
if (a[i]==a[i+1])
{
count++;
}
else
{
cout<<a[i]<<" "<<count<<endl;
count=1;
}
}
return 0;
} 


京公网安备 11010502036488号