给定公司N名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。
输入格式:
输入首先给出正整数N(≤105 ),即员工总人数;随后给出N个整数,即每个员工的工龄,范围在[0, 50]。
输出格式:
按工龄的递增顺序输出每个工龄的员工个数,格式为:“工龄:人数”。每项占一行。如果人数为0则不输出该项。
题目思路:
存储数据的时候让hashtable[]数组的下标与要存的数据保持一致,当有相同数据加入进来,让该下表对应的值++即可。
#include<iostream>
using namespace std;
int main()
{
int hashtable[51] = {
0}; //这里不能忘记初始化
int n , t;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> t;
hashtable[t]++; //核心
}
for (int i = 0; i <= 50; i++)
{
if (hashtable[i])
{
cout << i << ":" << hashtable[i] << endl;
}
}
return 0;
}