1177:奇数单增序列
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 36395 通过数: 18575
【题目描述】
给定一个长度为N(不大于500)的正整数序列,请将其中的所有奇数取出,并按升序输出。
【输入】
第1行为 N;
第2行为 N 个正整数,其间用空格间隔。
【输出】
增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。
【输入样例】
10
1 3 2 6 5 4 9 8 7 10
【输出样例】
1,3,5,7,9
【代码】
#include<cstdio>
#include<iostream>
using namespace std;
int n,a[501],b[501];
bool ok;
void sort(int x[],int y)
{
for(int i=y;i>1;i--)
{
ok=true;
for(int j=1;j<i;j++)
{
if(x[j]>x[j+1])
{
swap(b[j],b[j+1]);
ok=false;
}
}
if(ok==true) break;
}
}
int main()
{
cin>>n;
int j=1,m=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
if(a[i]%2==1)
{
b[j++]=a[i];
m++;
}
}
sort(b,m);
for(int i=1;i<m;i++)
{
cout<<b[i]<<",";
}
cout<<b[m];
return 0;
}