C/C++编程学习 - 第12周 ④ 奇数在前 偶数在后
题目链接
题目描述
给定一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。
要求:
时间复杂度为 O(n)。
输入格式:
输入有两行。第一行为数组中数字的个数 N(1 ≤ N ≤ 105),第二行为 N 个整数,每个整数之间用英文半角逗号隔开。保证每个整数可以用 32 位整数保存。
输出格式:
输出有一行。第一行输出 N 个数字,数字之间用英文半角逗号隔开,为调整顺序后的数组。
Sample Input
10
3,2,1,6,5,4,12,3,10,5
Sample Output
3,5,1,3,5,4,12,6,10,2
思路
这道题目比较特殊,要求是所有奇数位于数组的前半部分,所有偶数位于数组的后半部分,与样例输出不一样也行,只要符合题意就行。我们可以在输入数据时先判断奇偶,然后用两个数组分别把奇/偶储存,最后遍历数组输出。当然也可以直接输入数据,在输出的时候进行判断。
C++代码:(直接输入数据,在输出的时候进行判断)
#include<bits/stdc++.h>
using namespace std;
int num[100005];
int main()
{int n;char c;while(cin >> n){memset(num, 0, sizeof(num));int cnt = 0;for(int i = 0; i < n; i++)scanf("%d%c", &num[i], &c);for(int i = 0; i < n; i++)if(num[i] & 1){cout << num[i];cnt++;if(cnt < n) cout << ",";}for(int i = 0; i < n; i++)if(!(num[i] & 1)){cout << num[i];cnt++;if(cnt < n) cout << ",";}}return 0;
}
C/C++编程学习 - 第12周 ④ 奇数在前 偶数在后相关推荐
- C/C++编程学习 - 第12周 ③ 判断数正负
题目链接 题目描述 小蒜蒜知道了整数分为正整数.负整数和零. 给定一个整数 N,判断其正负. 输入格式 一个整数 N(−109≤N≤109). 输出格式 如果 N>0,输出"posit ...
- python数组排序奇数在前偶数在后_数组排列(奇数在前,偶数在后)
比如[1,2,3,4,5],排列结果可以是[1,5,3,4,2] 代码: /** * Created by wuchao on 17-3-29. */ import java.util.*; publ ...
- java 二维数组奇数金字塔_调整数组顺序使得奇数在前偶数在后(Java)
/* 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. */ //使用额外数组时 ...
- C/C++编程学习 - 第6周 ⑦ 分离整数的各个数位
题目链接 题目描述 小蒜给了你一个整数,要求从个位开始分离出它的每一位数字. 输入格式 输入一个整数,整数在 1 到 108 之间. 输出格式 从个位开始按照从低位到高位的顺序依次输出每一位数字.数字 ...
- C/C++编程学习 - 第6周 ⑤ 球弹跳高度的计算
题目链接 题目描述 蒜头君让一个球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下.编程计算气球在第 10 次落地时,共经过多少米?第 10 次反弹多高? 输入格式 输入一个整数 ...
- C/C++编程学习 - 第4周 ② 甲流疫情死亡率
题目链接 题目描述 蒜头君最近研究甲流,发现:甲流并不可怕,在中国,它的死亡率并不是很高.请根据截止 2009 年 12 月 22 日各省报告的甲流确诊数和死亡数,计算甲流在各省的死亡率. 输入格式 ...
- C/C++编程学习 - 第7周 ⑥ 合影效果
题目链接 题目描述 蒜头君和朋友们去爬香山,为美丽的景色所陶醉,想合影留念.如果他们站成一排,男生全部在左(从拍照者的角度),并按照从矮到高的顺序从左到右排,女生全部在右,并按照从高到矮的顺序从左到右 ...
- C/C++编程学习 - 第4周 ⑦ 判断是否为两位数
题目链接 题目描述 判断一个正整数是否是两位数(即大于等于 10 且小于等于 99). 蒜头君:很简单的,快来通过它吧! 输入格式 一个正整数,不超过 1000. 输出格式 一行.若该正整数是两位数, ...
- C/C++编程学习 - 第5周 ② 向左看齐
题目链接 题目描述 上体育课时,某班 n 个小朋友排成一列.随着体育老师的一声"向左看齐",同学们都朝着左边看.现在每个同学想知道左边的同学中,有多少人的身高比自己矮. 输入格式 ...
最新文章
- ECHO.js 纯javascript轻量级延迟加载
- Linux下vi编辑器命令精华版
- CICC科普栏目|神经网络浅讲:从神经元到深度学习
- Sayjoy┊多媒体在线编辑创作工具
- 百度推出LinearDesign,全球首个mRNA疫苗不稳定性解决方案,仅需16分钟
- linux宝塔面板配置可道云,使用宝塔面板配合可道云打造私有云
- 习题:统计字符串中的单词个数
- 黑马程序员之单例模式学习
- 站长工具--IP地址库
- 文本怎么换成html,编辑html格式文本可改成txt格式(可以替换或更换某文本)新手...
- H.264/AVC 标准中CAVLC 和CABAC 熵编码算法研究
- mysql ddl 锁_MySQL Online DDL导致全局锁表案例分析
- 资深架构师十几年的架构干货经验总结分享!
- VC++ WIN32 sdk实现按钮自绘详解.
- 安卓使用MediaPlayer自定义音频视频播放器
- matlab ctrl c,Matlab:实现CTRL + C的功能,但在代码中
- 计算机c盘如何扩大,C盘太小怎么办?教你扩大容量!
- erstudio安装
- 与计算机相关的创意网名,过目不忘创意好听网名
- 5个强大的Excel仪表板