2871:整数奇偶排序
总时间限制: 1000ms 内存限制: 65536kB
描述
输入10个整数,彼此以空格分隔
重新排序以后输出(也按空格分隔),要求:
1.先输出其中的奇数,并按从大到小排列;
2.然后输出其中的偶数,并按从小到大排列。
输入
任意排序的10个整数(0~100),彼此以空格分隔
输出
按照要求排序后输出,由空格分隔
样例输入
4 7 3 13 11 12 0 47 34 98
样例输出
47 13 11 7 3 0 4 12 34 98
提示

  1. 测试数据可能有很多组,请使用while(cin>>a[0]>>a[1]>>…>>a[9])类似的做法来实现;
  2. 输入数据随机,有可能相等。

问题链接:Bailian2871 Bailian3682 整数奇偶排序
问题简述:(略)
问题分析
    Bailian2871 Bailian3682 整数奇偶排序。这个题用C++来实现代码会比较简单一些,使用算法函数sort()来实现。
    一种做法是先进行简单排序,然后按从大到小输出奇数,再按从小到大输出偶数。第二种做法是在进行排序是指定比较函数cmp(),规定元素的顺序关系,考虑两个数的到奇偶性,需要考虑四种组合。第三种做法是改造排序算法,把元素比较封装到函数cmp()中。
程序说明:(略)
参考链接:(略)
题记:(略)

AC的C语言程序如下:

/* Bailian2871 Bailian3682 整数奇偶排序 */#include <stdio.h>#define N 10
int a[N];int cmp(int a, int b)
{if(a & 1 && (b & 1) == 0)return 0;else if((a & 1) == 0 && b & 1)return 1;else if(a & 1 && b & 1)return a < b;else if((a & 1) == 0 && (b & 1) == 0)return a > b;elsereturn 1;
}int main(void)
{int i, j, tmp;while(~scanf("%d", &a[0])) {for(i = 1; i < N; i++)scanf("%d", &a[i]);// 冒泡排序for(i = 0; i < N - 1; i++)for(j = N - 1; j >= i + 1; j--)if(cmp(a[i], a[j])) {tmp = a[i];a[i] = a[j];a[j] = tmp;}for(i = 0; i < N; i++)printf("%d ", a[i]);printf("\n");}return 0;
}

AC的C++语言程序(元素比较函数)如下:

/* Bailian2871 Bailian3682 整数奇偶排序 */#include <iostream>
#include <algorithm>using namespace std;const int N = 10;
int a[N];bool cmp(int a, int b)
{if(a & 1 && (b & 1) == 0)return true;else if((a & 1) == 0 && b & 1)return false;else if(a & 1 && b & 1)return a > b;else if((a & 1) == 0 && (b & 1) == 0)return a < b;elsereturn false;
}int main()
{while(~scanf("%d", &a[0])) {for(int i = 1; i < N; i++)scanf("%d", &a[i]);sort(a, a + N, cmp);for(int i = 0; i < N; i++)printf("%d ", a[i]);printf("\n");}return 0;
}

AC的C++语言程序(简单排序)如下:

/* Bailian2871 Bailian3682 整数奇偶排序 */#include <iostream>
#include <algorithm>using namespace std;const int N = 10;
int a[N];int main()
{while(~scanf("%d", &a[0])) {for(int i = 1; i < N; i++)scanf("%d", &a[i]);sort(a, a + N);for(int i = N - 1; i >= 0; i--)if(a[i] & 1) printf("%d ", a[i]);for(int i = 0; i < N; i++)if((a[i] & 1) == 0) printf("%d ", a[i]);printf("\n");}return 0;
}

Bailian2871 Bailian3682 整数奇偶排序【排序】相关推荐

  1. 整数奇偶数排序c++

    整数奇偶数排序 题目 例: 代码 解析 sort函数 题目 给定10个整数的序列,要求对其重新排序. 排序要求: 1.奇数在前,偶数在后: 2.奇数按从大到小排序: 3.偶数按从小到大排序. 输入一行 ...

  2. 1.10 编程基础之简单排序 06 整数奇偶排序 python

    http://noi.openjudge.cn/ch0110/06/ """ 1.10 编程基础之简单排序 06 整数奇偶排序 http://noi.openjudge. ...

  3. 信息学奥赛一本通 1181:整数奇偶排序 | OpenJudge NOI 1.10 06:整数奇偶排序

    [题目链接] ybt 1181:整数奇偶排序 OpenJudge NOI 1.10 06:整数奇偶排序 [题目考点] 1. 排序 [君义精讲]排序算法 [解题思路] 解法1:将奇数和偶数分开,分别排序 ...

  4. 信息学奥赛一本通(1181:整数奇偶排序)——快速排序

    1181:整数奇偶排序 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 13733     通过数: 8879 [题目描述] 给定10个整数的序列,要求对其重新排序 ...

  5. 1181:整数奇偶排序

    1181:整数奇偶排序 [题目描述] 给定10个整数的序列,要求对其重新排序.排序要求: 1.奇数在前,偶数在后: 2.奇数按从大到小排序: 3.偶数按从小到大排序. [输入] 输入一行,包含10个整 ...

  6. 【c/c++编程-排序问题】成绩排序、整数奇偶排序、国名排序、日志排序、字符串排序

    目录 成绩排序 整数奇偶排序1.0 成绩排序2.0 国名排序 日志排序 整数奇偶排序2.0 字符串排序 解一 解二 字符串排序3 后缀子串排序 EXCEL排序 特殊排序 成绩排序3.0 大整数排序 成 ...

  7. 电子协会 C语言 2级 60 、整数奇偶排序(2021年 6月真题)

    /* 电子协会 C语言 2级 60 .整数奇偶排序(2021年 6月真题)给定 10个整数的序列,要求对其重新排序.排序要求: 1.奇数在前,偶数在后: 2.奇数按从大到小排序: 3.偶数按输入顺序逆 ...

  8. Boost:在GPU上对整数向量进行排序

    Boost:在GPU上对整数向量进行排序 实现功能 C++实现代码 实现功能 Boost的compute模块,在GPU上对整数向量进行排序 C++实现代码 #include <algorithm ...

  9. 文件中有一组整数,要求排序后输出到另一个文件中

    这个主要复习一下文件输入输出流~~ 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ...

最新文章

  1. jeecg富文本编辑器增加字体(仿宋)
  2. R语言ggplot2可视化:箱图(box plot)可视化并且在为箱图的异常值(outlier)添加数据标签
  3. 1231. The Embarrassed Cryptography
  4. 【hard】146. LRU Cache
  5. FreeJTS部标视频平台:JT/T808、JT/T809、JT/T796、JT/T794、JT/T1078、苏标ADAS的区别
  6. C++检查图是否为二部图的算法(附完整源码)
  7. 2016四季度 服务器收入和出货量双下滑
  8. 济南计算机机械工程学校,济南电子机械工程学校
  9. python实际应用方面的材料_python应用于哪些方面
  10. android datepicker 自定义,android – 如何使用两个datepicker创建自定义对话框?
  11. php数据库--mysql优化
  12. DelayedProduce分析
  13. 华为nova 5z即将亮相:麒麟810+3200万人像超级夜景
  14. java逐行读取文件内容执行sql语句_[11/100] 文件和异常
  15. 【Python】9×9数独计算器
  16. 谷歌出品!机器学习中英文术语对照表
  17. Flutter流畅性fps计算
  18. ODrive0.5.1程序分析#4 闭环控制程序(run_closed_loop_control_loop)
  19. 手机如何远程控制挂机宝? 影云挂机宝
  20. macbook linux 双系统,mac安装linux双系统的吐槽

热门文章

  1. 如何使用GDAL重采样图像
  2. 用for打印菱形java_Java 动态打印菱形代码之for循环的使用
  3. Openlayers4加载天地图
  4. 插上翅膀,让Excel飞起来
  5. Android 利用缓存机制实现文件下载
  6. 我对骨骼动画的理解(最精减的骨骼动画类)
  7. C#图片处理之:Gamma校正
  8. java 显示锁_Java 实现一个自己的显式锁Lock(有超时功能)
  9. i219v微星 驱动_适用于WinPE的I219V英特尔驱动程序
  10. java textfield事件_java – 以编程方式触发JTextField中的键事件...