CCF 201503-2 数字排序

CCF 201503-2 数字排序

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

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

 1 #include<iostream>
 2 #include<cstring>
 3 #include<vector>
 4 using namespace std;
 5 int arr[1001];///数据不超过1000
 6
 7 int main()
 8 {
 9     int n;
10     while(cin>>n)
11     {
12         int temp;
13         memset(arr,0,sizeof(arr));
14         for(int i=0;i<n;i++)
15         {
16             cin>>temp;
17             arr[temp] ++;
18         }
19         ///最多的次数不超过1000
20         for(int i=1000;i>0;i--)
21         for(int j=0;j<=1000;j++)
22         {
23             if(arr[j] == i)
24                 cout<<j<<" "<<i<<endl;
25         }
26     }
27
28     return 0;
29 }

原文地址:https://www.cnblogs.com/yxh-amysear/p/8480569.html

时间: 2024-08-03 23:49:06

CCF 201503-2 数字排序的相关文章

CCF系列之数字排序(201503-2)

问题描述试题编号: 201503-2试题名称: 数字排序时间限制: 1.0s内存限制: 256.0MB问题描述: 问题描述 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出.输入格式 输入的第一行包含一个整数n,表示给定数字的个数. 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数.输出格式 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数.按出现次数递减的顺序输出.如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的.样例输入

[Python]CCF——数字排序(201503-2)

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

数组值数字+中文,以数字排序

数组中文加数字 以数字排序 $a['4']='123区'; $a['5']='3区'; $a['6']='32区'; $a['7']='8区'; foreach ($a as $k => $v) { preg_match('/\d+/',$v,$arr); if(!empty($arr)){ $name[$k] = $arr[0]; }else{ $name[$k] = $v; } } array_multisort($name,SORT_ASC,SORT_NUMERIC,$a); var_du

输入三个数字排序显示

<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title>输入三个数字排序显示</title></head><body><p>第一个输入框</p><input type="text" id="a1"/> <p>

数字排序

题编号:    201503-2 试题名称:    数字排序时间限制:    1.0s内存限制:    256.0MB问题描述: 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出.输入格式: 输入的第一行包含一个整数n,表示给定数字的个数. 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数.输出格式: 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数.按出现次数递减的顺序输出.如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的

文件名数字排序

问题: 每个文件名都是4个整数(0 到 100)中间用"."连接,如下format: N.N.N.N example: 1.8.1.2 1.13.1.1 1.3.0.1 2.7.4.1 14.0.0.4 要求, 文件名按数字排序,从左往右四个数字均按照从小到大排序,预期结果1.3.0.1 1.8.1.2 1.13.1.1 2.7.4.1 14.0.0.4 解答: ls|sort -n -t. -k1,1 -k2,2 -k3,3 -k4,4 1.3.0.1 1.8.1.2 1.13.1.

字母数字排序

字母数字排序 层次结构窗口中对象的顺序可以更改为字母数字顺序.在菜单栏中,选择编辑>首选项在Windows或统一>首选项在OS X中启动首选项窗口.勾选启用字母数字排序. 如果选中该选项,图标将出现在层次窗口的右上角,让您之间切换转换排序(默认值)或字母排序. 原文地址:https://www.cnblogs.com/kubll/p/10801409.html

086-PHP数组按数字排序和按字母排序

<?php $arr=array(2,54,167,'a','A','12'); //定义一个数组 echo '数组排序之前的信息:<br />'; print_r($arr); //输出数组的信息 echo '<br />数组普通排序之后的信息:<br />'; sort($arr); //对数组进行排序 print_r($arr); echo '<br />数组作为数字排序之后的信息:<br />'; sort($arr,SORT_NU

CCF真题之数字排序

201503-2 问题描述 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出. 输入格式 输入的第一行包含一个整数n,表示给定数字的个数. 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数. 输出格式 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数.按出现次数递减的顺序输出.如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的. 样例输入 12 5 2 3 3 1 3 4 2 5 2 3 5 样例输出 3 4 2 3 5 3