题解 | #小乐乐与序列#

小乐乐与序列

https://www.nowcoder.com/practice/9a1c1c764ce04fed8ceff7714e74d3b6

#include <stdio.h>

int main()
{
    int n = 0,k = 0;
    int max = 0;
    int arr[1000001] = {0};
    
    scanf("%d",&n);
    for(int i = 0;i < n; i++)
    {
        scanf("%d",&k);
        //记录输入数据中最大的一个数
        if(max<k)
         max = k;
        //将数据与数组下标对应,出现则数据对应数组下标的值置为1
        //表示该数据出现过,未出现的都为0
        //如果输入数据为0,则arr[0]=1
        if(arr[k] == 0)
        {
            arr[k]++;
        }
    }
    //前面我们记录了所出现数据的最大值
    //因此不用检查到数组的最后一位
    //只要将数组元素为1的下标打印即可
    for(int i = 0;i<=max;i++)
        if(arr[i])
            printf("%d ",i);
    return 0;
}

全部评论
你的max在这个题目里面就是n,其实不需要再判断了
点赞 回复 分享
发布于 2023-10-18 23:49 广西

相关推荐

菜菜咪:1. 可以使用简历网站的模版,美观度会更好一点 2. 邮箱可以重新申请一个,或者用qq邮箱的别名,部分hr可能会不喜欢数字邮箱 3. 项目经历最好分点描述,类似的项目很多,可以参考一下别人怎么写的 4. 自我评价可加可不加,技术岗更看重技术。最后,加油,优秀士兵
点赞 评论 收藏
分享
拒绝无效加班的小师弟很中意你:求职意向没有,年龄、课程冗余信息可以删掉,需要提升项目经历。排版需要修改。
点赞 评论 收藏
分享
3 1 评论
分享
牛客网
牛客企业服务