问题:输入一系列整数,将其中最大的数挑出(如果有多个,则挑出一个即可),并将剩下的数进行排序,如果无剩余的数,则输出-1。
输入:
5
1 3 2 4 4
输出:
1 2 3 4
求助大佬们,如果有多个最大值,怎么保留其他最大值呀,怎么改一下我的代码呢,感谢感谢
#include<bits/stdc++.h>
using namespace std;
int main(){
int mx=0,co=0;
int n,a[1000]={};
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
}
for(int i=0;i<n;i++){
if(a[i]>=mx){
mx=a[i];
}
}
for(int i=0;i<n;i++){
if(a[i]!=mx){
a[co++]=a[i];
}
}
sort(a,a+co);
cout<<mx<<endl;
if(co==0){
cout<<"-1"<<endl;
return 0;
}
for(int i=0;i<co;i++){
cout<<a[i]<<" ";
}
return 0;
}