特殊排序,求大佬们。
  • 板块学术版
  • 楼主魑魅魍魉唬
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/3/5 17:13
  • 上次更新2024/3/5 19:47:18
查看原帖
特殊排序,求大佬们。
317218
魑魅魍魉唬楼主2024/3/5 17:13

问题:输入一系列整数,将其中最大的数挑出(如果有多个,则挑出一个即可),并将剩下的数进行排序,如果无剩余的数,则输出-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;
}

2024/3/5 17:13
加载中...