秃头的直上


私信TA

用户名:TTDZS

访问量:2636

签 名:

等  级
排  名 16560
经  验 800
参赛次数 0
文章发表 10
年  龄 0
在职情况 学生
学  校 桂林电子科技大学
专  业

  自我简介:

解题思路: 创建一个超大数组,然后把数列中的数字按照下标放入超大数组中

                比如拿着很多个标有数字的签子,面前摆着标有数字的大桶,把手上的签子按照数字,放入对应的桶中,放完之后从这排桶的第一个桶看起,如果桶中没有签字就跳过看下一个桶,桶中有签字,就直接输出桶中的签子数;

                其实就是桶排序啦

注意事项:

参考代码:

#include<iostream>
#include<algorithm>
using namespace std;

int a[1000000];

int main()
{
    int n;
    cin>>n;
    int m=0;
    for(int i;i<n;i++)
    {
        int x;
        cin>>x;
        a[x]++;
        m=max(m,x);
    }
    
    for(int i=0;i<=m;i++)
    {
        if(a[i]!=0)
        {
            cout<<i<<' '<<a[i]<<endl;
        }
    }
    return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »