问题描述
  给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。
输入格式
  输入的第一行包含一个整数n,表示给定数字的个数。
  第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。
输出格式
  输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的。
样例输入
12
5 2 3 3 1 3 4 2 5 2 3 5
样例输出
3 4
2 3
5 3
1 1
4 1
评测用例规模与约定
  1 ≤ n ≤ 1000,给出的数都是不超过1000的非负整数。

思路:数组下标作为输入的整数,数组元素作为其下标整数出现的次数。

关键在输出时的方法,先倒序循环出现的次数最大出现次数不过1000次,再从小到大循环下标,有出现次数与数组元素相同的就输出 下标和出现次数。这样就满足了题中要求。

#include <iostream>
#include <string.h> using namespace std; int main() {
int a[1005];
int n,num;
int i,j;
memset(a,0,sizeof(int)*1005);
cin >> n;
for (i=0;i<n;i++){
cin >> num;
a[num]++;
}
for (i=1004;i>0;i--)
for (j=0;j<1005;j++)
if (a[j] == i)
cout << j << " " << a[j] << endl;
return 0;
}

  

最新文章

  1. linux 中更改用户权限和用户组的命令chmod,chgrp实例
  2. hammerJs-v2.0.4详解
  3. POJ1094[有向环 拓扑排序]
  4. 深入浅出Symfony2 - 如何提高网站响应速度 [转]
  5. Django1.8教程——从零开始搭建一个完整django博客(二)
  6. 误删除了mssql的表。 使用命令:drop table xxxx
  7. iOS如何统计渠道
  8. Lintcode: Merge Sorted Array II
  9. SpringJDBC
  10. oracle 非空闲等待事件排查
  11. hdu_5807_Keep In Touch(分段dp)
  12. linux 下 nc 命令的使用
  13. CentOS7 安装Python
  14. 如何用dat批处理文件关闭某端口对应程序-Windows自动化命令
  15. seo标题关键字描述字数限制Title,keywords,description长度最长多长 ?
  16. chrome 浏览器插件开发(一)—— 创建第一个chrome插件
  17. wepy - 与原生有什么不同(x.wpy)使用实例
  18. iOS- 快速实现展示布局
  19. js 离开页面
  20. css工具类封装

热门文章

  1. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
  2. Secure CRT 自动记录日志log配置
  3. CSS style 属性
  4. 移动互联网消息推送原理:长连接+心跳机制(MQTT协议)
  5. 安装OpenOffice
  6. 2018-2019-1 1723《程序设计与数据结构》第3&amp;4周作业 总结
  7. C++ 细小知识点
  8. Spring Aop的理解和简单实现
  9. Package libvirt was not found in the pkg-config search path
  10. fastjson 简单使用 及其JSONObject使用