// setnum.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include"vector"
#include<iostream>
using namespace std;
void setnum(int source[],int count)
{
int m = 0,n=0;
vector<int> temp1, temp2;
for (size_t i = 0; i < count ; i++)//将1-8和9-16分别存入两个容器中
{
if (source[i] < 9)
{
temp1.push_back(source[i]);
m++;
}
else temp2.push_back(source[i]);
}
n = count - m;
if (m>=n)//由元素少的着手,一上一下输出,最后输出多的剩余的元素
{
for (size_t i = 0; i <n; i++)
{
cout << temp1[i]<<" "<<temp2[i]<<" ";
}
for (size_t i = n; i <m; i++)
{
cout << temp1[i]<<" ";
}
}
else
{
for (size_t i = 0; i <m; i++)
{
cout << temp1[i] <<" "<< temp2[i]<<" ";
}
for (size_t i = m; i <n; i++)
{
cout << temp2[i]<<" ";
}
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int source[16] = {1,3,5,8,9,10,11,14,15,16};
setnum(source,10);
getchar();
return 0;
}
#include "stdafx.h"
#include"vector"
#include<iostream>
using namespace std;
void setnum(int source[],int count)
{
int m = 0,n=0;
vector<int> temp1, temp2;
for (size_t i = 0; i < count ; i++)//将1-8和9-16分别存入两个容器中
{
if (source[i] < 9)
{
temp1.push_back(source[i]);
m++;
}
else temp2.push_back(source[i]);
}
n = count - m;
if (m>=n)//由元素少的着手,一上一下输出,最后输出多的剩余的元素
{
for (size_t i = 0; i <n; i++)
{
cout << temp1[i]<<" "<<temp2[i]<<" ";
}
for (size_t i = n; i <m; i++)
{
cout << temp1[i]<<" ";
}
}
else
{
for (size_t i = 0; i <m; i++)
{
cout << temp1[i] <<" "<< temp2[i]<<" ";
}
for (size_t i = m; i <n; i++)
{
cout << temp2[i]<<" ";
}
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int source[16] = {1,3,5,8,9,10,11,14,15,16};
setnum(source,10);
getchar();
return 0;
}