RE求助:一关
  • 板块学术版
  • 楼主Chalage_2010
  • 当前回复10
  • 已保存回复10
  • 发布时间2023/1/3 17:22
  • 上次更新2023/10/24 05:41:29
查看原帖
RE求助:一关
760690
Chalage_2010楼主2023/1/3 17:22

题目描述

【题目描述】

给定10个整数的序列,要求对其重新排序。排序要求:

1.奇数在前,偶数在后;

2.奇数按从大到小排序;

3.偶数按从小到大排序。

 

【输入】

输入一行,包含10个整数,彼此以一个空格分开,每个整数的范围是大于等于0,小于等于30000。

【输出】

按照要求排序后输出一行,包含排序后的10个整数,数与数之间以一个空格分开。

 

【样例输入】

4 7 3 13 11 12 0 47 34 98
【样例输出】

47 13 11 7 3 0 4 12 34 98

我的代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	long long j[20],o[20],n,x=0,y=0;
	for(int i=1;i<=10;i++)
	{
		cin>>n;
		if(n%2==0)
		{
			y++;
			o[y]=n;
		}
		else
		{
			x++;
			j[x]=n;
		}
	}
	sort(o+1,o+y+1);
	sort(j+x+1,j+1);
	for(int i=1;i<=x;i++)
	{
		cout<<j[i]<<" ";
	 } 
	for(int i=1;i<=y;i++)
	{
		cout<<o[i]<<" ";
	 } 
	return 0;
}
2023/1/3 17:22
加载中...