分值 : 25 难度 : 水题 思路 : sort使用 坑点 :
12345678910111213141516171819202122232425262728293031323334353637383940414243
#include "stdio.h"#include "stdlib.h"int cmp(const void*a , const void* b ){ return *((int *)a) - *((int *)b) ;}int main(){ int num ; scanf("%d" , &num) ; int data[num] ; int data1[num] ; for(int i = 0 ; i< num ; i++) { int value ; scanf("%d",&value) ; data[i] = value ; data1[i] =value ; } qsort(data1,num , sizeof(data1[0]) ,cmp) ; int count = 0 ; int result[num] ; int max = 0 ; for( int i = 0 ; i< num ; i++) { if(max <= data[i]) max = data[i] ; if(data[i] == data1[i] && data1[i] == max) { result[count++] = data1[i] ; } } printf("%d\n" ,count) ; for(int i = 0 ; i< count ; i++) { if(i==0) printf("%d" , result[i]) ; else printf(" %d" ,result[i]) ; } printf("\n");}