本文主要是介绍5233: 【J1】【map】统计数字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5×109)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
输入
共n+1行。
第一行是整数n,表示自然数的个数;
第2至n+1每行一个自然数。
输出
共m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。
每行输出2个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
样例输入
8 2 4 2 4 5 100 2 100
样例输出
2 3 4 2 5 1 100 2
Code:
#include<bits/stdc++.h>
using namespace std;
int main(){map<int,int>map_num;vector<long long>vec_long;int n;cin>>n;for(int i=1;i<=n;i++){long long temp;cin>>temp;if(map_num[temp]==0){vec_long.push_back(temp);}map_num[temp]++;}sort(vec_long.begin(),vec_long.end());for(int i=0;i<map_num.size();i++){cout<<vec_long[i]<<" "<<map_num[vec_long[i]]<<endl;}return 0;
}
这篇关于5233: 【J1】【map】统计数字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!