1 条题解

  • 1
    @ 2025-10-2 21:08:18

    可以用qsort函数直接排列,出来的就是按照字典序排列的结果。

    因为不同字符串的长度可能不同,所以使用指针,对指针进行排序,高效且不易出错。

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h> 
    #include<math.h>
    int cmp(const void*a,const void*b){
    	return strcmp(*(const char**)a,*(const char**)b);
    }
    
    int main(){
    	int n,i;scanf("%d",&n);
    	getchar();
    	char a[n][100];
    	char *ptr[n];
    	for(i=0;i<n;i++){
    		fgets(a[i],100,stdin);
    		if(a[i][strlen(a[i])-1]=='\n'){
    			a[i][strlen(a[i])-1]=='\0';
    		}
    		ptr[i]=a[i];
    	}
    	qsort(ptr,n,sizeof(char *),cmp);
    	printf("%s",ptr[n-1]);
        return 0;
    }
    
    • 1

    信息

    ID
    39
    时间
    1000ms
    内存
    512MiB
    难度
    7
    标签
    递交数
    557
    已通过
    114
    上传者