奇数排序
2015-07-19 09:26
441 查看
Description
给定n个正整数,对其中的奇数按递增次序排序。
Input
第一行是一个正整数:测试用例数目,最多为5。之后,每个测试用例包括两行:
l 第1行给出整数数目n,1≤n≤100000,每个整数范围为 [0,100000)
l 第2行给出n个整数
Output
对于每个测试用例:
l 输出“Case #:”,#表示序号
l 输出奇数排序后的n个整数
注意:输出部分的结尾要求包含一个多余的空行。
Sample Input
2
3
4 2 1
3
3 2 1
Sample Output
Case 1:
4 2 1
Case 2:
1 2 3
给定n个正整数,对其中的奇数按递增次序排序。
Input
第一行是一个正整数:测试用例数目,最多为5。之后,每个测试用例包括两行:
l 第1行给出整数数目n,1≤n≤100000,每个整数范围为 [0,100000)
l 第2行给出n个整数
Output
对于每个测试用例:
l 输出“Case #:”,#表示序号
l 输出奇数排序后的n个整数
注意:输出部分的结尾要求包含一个多余的空行。
Sample Input
2
3
4 2 1
3
3 2 1
Sample Output
Case 1:
4 2 1
Case 2:
1 2 3
#include<stdio.h> #include<stdlib.h> int cmp(const*a,const*b) { return *a-*b; } int main() { int *a,*b,i,j,m,n,c=0; scanf("%d",&m); for(i=1;i<=m;i++) { c=0; scanf("%d",&n); a=malloc(4*n); b=malloc(4*n); for(j=0;j<n;j++) { scanf("%d",a+j); if(a[j]%2==1) { b[c]=a[j]; c++; } } qsort(b,c,4,cmp); c=0; for(j=0;j<n;j++) if(a[j]%2==1) { a[j]=b[c]; c++; } printf("Case %d:\n",i); for(j=0;j<n-1;j++) printf("%d ",a[j]); printf("%d\n",a[j]); } return 0; }
相关文章推荐
- linux文件基本操作(1)
- 委派模式
- 在windows环境下,使用Eclipse和gcc-Linaro工具链,对BeagleBone进行交叉编译和远程部署
- 欢迎使用CSDN-markdown编辑器
- C# 条件与&&与条件或||的使用总结
- Tree Recovery-UVA 536
- 那些神奇的"大师"是如何炼成的(科学、迷信、心理)
- Android Fragment
- 敏捷开发之Scrum扫盲篇
- 嵌入式学习答疑
- Android之——Handler随笔
- Merge Two Sorted Lists
- poj1649 Rescue(BFS+优先队列)
- (win8系统)VMware-workstation安装教程(图文)
- java虚拟机学习笔记 一
- 《textanalytics》课程简单总结(4):课程总结
- 三次面试总结
- [LeetCode] Longest Palindrome Substring 具体分析
- UIPopoverController和UIActionSheet在iPad中使用
- 7.18使用<a>标签