文章

9

粉丝

0

获赞

42

访问

16.6k

头像
特殊排序 题解:为什么只通过50%呢,请找出错误用例,谢谢!
P1400 华中科技大学机试题
发布于2024年3月10日 16:18
阅读数 1.7k

#include<stdio.h>
#include<stdlib.h>
int cmp(const void *a, const void *b){
    return *(int *)a - *(int *)b;//升序
//    return *(int *)b - *(int *)a;//降序
}
int main(){
    int n;
    int m[1000];
    while(scanf("%d",&n)!=EOF){
        for(int i=0;i<n;i++)
            scanf("%d",&m[i]);
        qsort(m,n,sizeof(m[0]),cmp);
        int flag=-1;
        printf("%d\n",m[n-1]);
        for(int i=0;i<n;i++){
            if(m[i]!=m[n-1]){
                printf("%d ",m[i]);
             &n...

登录查看完整内容


登录后发布评论

3 条评论
禾火
2026年3月9日 20:27

我也是这么写的,感觉如果只是取出一个后再排序那不是只有在总体只有一个数字的情况下才会输出-1吗 考察的有点奇怪 不知道是不是我理解的有问题

 

赞(0)
回复给:
snake
2024年3月10日 18:51

输入一系列整数,将其中最大的数挑出(如果有多个,则挑出一个即可),并将剩下的数进行排序,如果无剩余的数,则输出-1。

赞(0)

A001 : 回复 snake: 原来是这个意思!悟了!谢谢你!!!

2024年3月10日 20:22
回复给: