akoj-1187-统计数字
来源:互联网 发布:麦克风唱歌软件 编辑:程序博客网 时间:2024/05/16 07:37
统计数字
Time Limit:1000MS Memory Limit:65536K
Total Submit:19 Accepted:14
Description
某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
Input
输入包含n+1行:
第1行是整数n,表示自然数的个数。
第2~n+1行每行一个自然数。
Output
输出包含m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
Sample Input
9232334254
Sample Output
2 33 34 25 1
Source
这题还是应该用map、容器来做比较好,但我理解的不多,所以还是用二维数组A掉了
#include <iostream>#include <cstdio>#include <map>#include <vector>#include <set>#include <algorithm>using namespace std;int main(){ long long t,n;bool b=true; while(scanf("%lld",&t)!=EOF) {if(!b) printf("\n");b=0; map<long long,long long>m; set<long long>s; vector<long long>v; while(t--) { scanf("%lld",&n); if(s.count(n)==0) { s.insert(n); v.push_back(n); m[n]=1; } else m[n]++; } sort(v.begin(),v.end()); for(int i=0;i<v.size();i++) printf("%lld %lld\n",v[i],m[v[i]]); } return 0;}
#include<iostream>#include<algorithm>using namespace std;int main(){ int n,a[10001]={0},b[10001]={0}; cin>>n; for(int i=0; i<n; i++) { cin>>a[i]; } sort(a,a+n); for(int i=0;i<n;i++) { for(int j=0;j<n;j++) if(a[j]==i)b[i]++; } for(int i=0;i<n;i++) if(b[i]!=0) cout<<i<<" "<<b[i]<<endl; return 0;}
0 0
- akoj-1187-统计数字
- akoj-1211-统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字
- 统计数字问题
- 统计数字问题
- 统计数字问题
- 统计数字问题
- 统计数字问题
- UVA Tree's a Crowd(三维空间的点求最短距离)
- UVA Train Swapping(冒泡排序的次数)
- dede安全设置
- STL容器中的vector<摘自别人博客>
- poj3311 Hie with the Pie(最短路+状态dp)
- akoj-1187-统计数字
- ExtJs4.2应用:ExtJs4.2+Mysql+Struts2+Hibernate3实现分页查询
- RIP、RIP2、EIGRP、OSPF协议比较
- Java读写二进制数据
- 在windows C++中编译并使用Lua脚本1
- android 网络通信的六种方式 吸收总结
- 第六周学习笔记
- Ubantu14下Maven安装
- C++求数组长度