桶排序-1184:明明的随机数

【题目描述】

明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成"去重"与"排序"的工作。

【输入】

有2行,第1行为1个正整数,表示所生成的随机数的个数:N;

第2行有N个用空格隔开的正整数,为所产生的随机数。

【输出】

也是2行,第1行为1个正整数M,表示不相同的随机数的个数。第2行为M个用空格隔开的正整数,为从小到大排好序的不相同的随机数。

【输入样例】

复制代码
10
20 40 32 67 40 20 89 300 400 15

【输出样例】

复制代码
8
15 20 32 40 67 89 300 400

刚刚我用sort函数排了

然后发现一年前我用桶排序的思想解决

不记得桶排序是什么了,所以记录一下桶排序做法

复制代码
#include <bits/stdc++.h>
using namespace std;

int main()
{
    int i,j,k,n;
    cin>>n;
    int a[1100]={0};
    int x,cnt=0;
    for(i=1;i<=n;i++){
        cin>>x;
        if(a[x]==0)
            cnt++;
        a[x]++;
    }
    cout<<cnt<<endl;
    for(i=1;i<=1000;i++)
        if(a[i]!=0)
        cout<<i<<' ';
    return 0;
}
相关推荐
~|Bernard|22 分钟前
二.go语言中map的底层原理(2026-5-8)
算法·golang·哈希算法
AbandonForce30 分钟前
哈希表(HashTable,散列表)个人理解
开发语言·数据结构·c++·散列表
mask哥34 分钟前
力扣算法java实现汇总整理(下)
java·算法·leetcode
代码中介商36 分钟前
栈结构完全指南:顺序栈实现精讲
c语言·开发语言·数据结构
样例过了就是过了1 小时前
LeetCode热题100 编辑距离
数据结构·c++·算法·leetcode·动态规划
wearegogog1231 小时前
MATLAB椭圆参数检测算法实现
数据库·算法·matlab
secondyoung1 小时前
Markdown数学公式语法速查手册
算法·编辑器·markdown·latex
君义_noip1 小时前
CSP-S 2025 提高级 第一轮(初赛) 阅读程序(1)
算法·深度优先·信息学奥赛·初赛
小O的算法实验室1 小时前
2026年IEEE TEVC,知识引导的竞争进化算法用于多解传感器-武器-目标分配问题,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
khalil10202 小时前
代码随想录算法训练营Day-46 动态规划13 | 647. 回文子串、516.最长回文子序列、动态规划总结
数据结构·c++·算法·leetcode·动态规划·回文子串·回文子序列