题目:成绩统计 I
描述
初中中考改革之后,语文、数学和英语的成绩变得非常重要。有时候一分之差,都会导致排名大幅靠后。
洪亮的妈妈是一位数学老师,每次考试之后,都要拿出一定的时间来,统计每一个分数都有多少孩子。有了这些数据,在给他的学生进行考试分析时,会非常有说服力。
洪亮看到妈妈非常辛苦,于是打算编写个程序,帮助妈妈统计一下。
输入
共两行,第一行,一个数N(N<=1000000)
第二行,N个数,都是整数,不超过120。
输出
不确定行数,每行2个数,第一个数字是分数,第二个数字是得这个分的人数。
要求分数高的先输出。
输入样例
10 110 115 120 113 118 115 118 120 100 110
输出样例
120 2 118 2 115 2 113 1 110 2 100 1
这道题需要用到计数排序
#include <iostream>
using namespace std;
int a[121];
int main()
{
int n,i,x;
cin >> n;
for (i=0;i<n;i++)
{
cin >> x;//用变量x接收输入的值
a[x]++;
}
for (i=120;i>=0;i--)//从大到小循环
{
if (a[i]!=0)//如果个数超过0个,那么输出分数i和个数a[i]
{
cout << i << " " << a[i] << endl;
}
}
return 0;
}