1177:奇数单增序列
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 56645 通过数: 29059
【题目描述】
给定一个长度为N(不大于500)的正整数序列,请将其中的所有奇数取出,并按升序输出。
【输入】
第1行为 N;
第2行为 N 个正整数,其间用空格间隔。
【输出】
增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。
【输入样例】
10
1 3 2 6 5 4 9 8 7 10
【输出样例】
1,3,5,7,9
简单,sort,500的数据用sort不会爆,也可以用其它的排序算法,先判断当前输出的数是否为奇数,用一个bool来判断输出的是否为第一个,不是的话再前面输出一个","
#include<bits/stdc++.h>
using namespace std;
int n,a[501];
bool p=true;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
sort(a+1,a+n+1);
for(int i=1;i<=n;i++)
{
if(a[i]%2==1)
{
if(p)
{
cout<<a[i];
p=false;
}
else
{
cout<<","<<a[i];
}
}
}
}
本文介绍如何用C++解决一个简单的编程问题,即给定正整数序列,筛选出奇数并按升序输出。涉及排序算法和条件判断技巧。
1174

被折叠的 条评论
为什么被折叠?



