华为机试训练第三道提明明的随机数,牛客网编译器有问题吗?

明明的随机数我用code::blocks编译都对,为什么到牛客网去运行就说为空,搞不懂,这道题是华为机试在线训练的第三道。求指点是牛客网编译器问题还是我code::blocks问题。输入输出格式是没问题的。

#include <stdio.h>

int o;

int *selectsort(int *p,int n){
    int temp,min,i,j;
    for(i=0;i<n-1;i++){
        min=i;
        for(j=i+1;j<n;j++){
            if(p[min]>p[j])
                min=j;
        }
        if(min!=i){
            temp=p[min];
            p[min]=p[i];
            p[i]=temp;
        }
    }
    return p;
}

int *quchong(int *p,int n){
    int i,j,a=0,temp;
    int m[1000];
    for(i=0;i<n;i++){
        temp=p[i];
        for(j=i+1;j<n;j++){
            if(temp==p[j]&&p[j]!=0){
                p[j]=0;
            }
        }
        if(p[i]!=0){
            m[a]=temp;
            a++;
        }
    }
    o=a;
    p=m;
    return p;
}

int main(){
    int *q,*p,i,j,m[1000],n;
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%d",&m[i]);
    }
    p=quchong(m,n);
    q=selectsort(p,o);
    for(j=0;j<o;j++){
        printf("%d\n",q[j]);
    }
}

#华为#
全部评论
我觉得这样的写法更简单:   public static void getRandomNum() {         Scanner in = new Scanner(System.in);         while (in.hasNext()) {             int input = in.nextInt();             List list = new ArrayList();             for (int i = 0; i < input; i++) {                 list.add(in.nextInt());             }             List collect = (List) list.stream().distinct().sorted().collect(Collectors.toList());             for (int j = 0; j < collect.size(); j++) {                 System.out.println(collect.get(j));             }         }     }
点赞 回复 分享
发布于 2022-02-27 11:56
没考虑多个测试用例问题吧,看下别人通过的代码
点赞 回复 分享
发布于 2018-07-30 11:26

相关推荐

Rena1ssanc...:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
鼠鼠第一次实习,啥也不懂一直是自己一个人吃的饭,不会做工作老是被嫌弃,大人的世界是这样的吗?
我是星星我会发亮:好的mt有两种,一种愿意教你的,一种几乎什么活都不给你派让你很闲允许你做自己事情的
实习吐槽大会
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务