题解 | #明明的随机数#

明明的随机数

https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0

#include <stdio.h>
#include <stdlib.h>
int main() {
    int N,n,figure;
    scanf("%d",&N);
    short *array = (short *)malloc(N * sizeof(short));
    for(int i=0;i<N;i++)
    {
        scanf("%d",&figure);
        array[i]=figure;
    }
    //去重
    n=N;
    for(int i=0;i<N-1;i++)
    {
        if((figure = array[i])==0)
            continue;
        for(int j=i+1;j<N;j++)
        {
            if(array[j]==figure){
                array[j]=0;      
                n--;
            }          
        }
    }
    //排序
    short *sort = (short*)malloc(n*sizeof(short));
    for(int i=0;i<N;i++)
    {        
        if((figure = array[i])==0)
            continue;
        int index = 0;
        for(int j=0;j<N;j++)
        {
            int figure2;
            if((figure2 = array[j])==0)
                continue;
            if(figure2<figure)
                index++;
        }
        sort[index]=figure;
    }
    free(array);


    for(int i=0;i<n;i++)
    {
        printf("%d\r\n",sort[i]);
    }
    free(sort);
    return 0;
}

全部评论

相关推荐

10-11 17:30
湖南大学 C++
我已成为0offer的糕手:羡慕
点赞 评论 收藏
分享
点赞 评论 收藏
分享
头像
昨天 14:28
长沙理工大学
刷算法真的是提升代码能力最快的方法吗?&nbsp;刷算法真的是提升代码能力最快的方法吗?
牛牛不会牛泪:看你想提升什么,代码能力太宽泛了,是想提升算法能力还是工程能力? 工程能力做项目找实习,算法也分数据结构算法题和深度学习之类算法
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务