HDU 2019 数列有序!
我的思路是逐个输出的时候判断一下是不是比需要插入的值大,是的话就把插入值输出到前面,只需要注意一下最后一个输出后面没有空格就OK了!
#include <stdio.h>
#include <iostream>
using namespace std;
void main()
{
int n,m;
while(cin>>n>>m && (n != 0 || m != 0))
{
int arNum[101]={0};
for(int i=0; i<n; i++)
scanf("%d",&arNum[i]);
bool bFound = false;
for(int i=0; i<n;i++)
{
if(!bFound)
{
if(arNum[i]>m)
{
if(i == n-1)
printf("%d %d\n",m,arNum[i]);
else
printf("%d %d ",m,arNum[i]);
bFound = true;
}
else
printf("%d ",arNum[i]);
}
else if(i == n-1)
printf("%d\n",arNum[i]);
else
printf("%d ",arNum[i]);
}
if(!bFound)
printf("%d\n",m);
}
}