09:直方图
程序员文章站
2022-04-03 22:48:17
...
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
-
给定一个非负整数数组,统计里面每一个数的出现次数。我们只统计到数组里最大的数。
假设 Fmax (Fmax < 10000)是数组里最大的数,那么我们只统计 {0,1,2.....Fmax} 里每个数出现的次数。
- 输入
- 第一行n是数组的大小。1 <= n <= 10000。
紧接着一行是数组的n个元素。 - 输出
- 按顺序输出每个数的出现次数,一行一个数。如果没有出现过,则输出0。
对于例子中的数组,最大的数是3,因此我们只统计{0,1,2,3}的出现频数。 - 样例输入
-
5 1 1 2 3 1
- 样例输出
-
0 3 1 1
源码
#include <iostream>
using namespace std;
int main()
{
int n, x, i, Fmax=0;
int histogram[10000]={0}; // 记录每个数字出现的次数
cin >> n;
for (i=0; i<n; i++){
cin >> x;
histogram[x]++;
if (x > Fmax) Fmax = x;
}
for (i=0; i<=Fmax; i++)
cout << histogram[i] << endl;
return 0;
}
上一篇: python中swapcase是什么意思