输入n个数进行排序,要求先按奇偶后按从小到大的顺序排序

文章目录


一、题目描述

cpp 复制代码
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb
输入n个数进行排序,要求先按奇偶后按从小到大的顺序排序。

输入输出格式
输入描述:
第一行输入一个整数n,表示总共有多少个数,n<=1000。
第二行输入n个整数,用空格隔开。
输出描述:
输出排序之后的结果。
输入输出样例
输入样例#:
8
1 2 3 4 5 6 7 8
输出样例#:
1 3 5 7 2 4 6 8

二、参考代码

cpp 复制代码
#include <iostream>
#include <string>
#include <algorithm>
#include <math.h>
using namespace std;

int main()
{
	int n;
	cin >> n;
	int* arr = new int[n+1];
	for (int i = 0; i < n; i++)
	{
		cin >> arr[i];
	}
	sort(arr,arr + n);

	int *arr1 = new int[n + 1];
	int* arr2 = new int[n + 1];
	int count1 = 0;
	int count2 = 0;
	for (int i = 0; i < n; i++)
	{
		if (arr[i] % 2 == 0)
		{
			arr2[count2] = arr[i];
			count2++;
		}
		else
		{
			arr1[count1] = arr[i];
			count1++;
		}
	}
	for (int i = 0; i < count1; i++)
	{
		cout << arr1[i] << " ";
	}
	for (int i = 0; i < count2; i++)
	{
		cout << arr2[i]<<" ";
	}

	return 0;
}

相关推荐
信奥卷王9 小时前
2025年12月GESPC++二级真题解析(含视频)
算法
乐迪信息9 小时前
乐迪信息:船体AI烟火检测,24小时火灾自动预警
人工智能·物联网·算法·目标检测·语音识别
Z1Jxxx9 小时前
整除整除整除
开发语言·c++·算法
Swift社区9 小时前
LeetCode 471 编码最短长度的字符串
算法·leetcode·职场和发展
没有天赋那就反复9 小时前
JAVA length
java·开发语言·算法
Tisfy9 小时前
LeetCode 0712.两个字符串的最小ASCII删除和:反向思维保留最大(动态规划)
算法·leetcode·动态规划·字符串·dp·子序列
ohoy9 小时前
RedisTemplate 使用之Hash
redis·算法·哈希算法
栈与堆9 小时前
LeetCode-88-合并两个有序数组
java·开发语言·数据结构·python·算法·leetcode·rust
源代码•宸9 小时前
Leetcode—712. 两个字符串的最小ASCII删除和【中等】
开发语言·后端·算法·leetcode·职场和发展·golang·dp