航电2019题
输入多组数据.
第一行 n m;
第二行输入n个排好序的数;
将m插入,
n=m=0时结束程序
代码:
#include<iostream>
#include<string>
using namespace std;
int main()
{
int n,m;
while(cin>>n>>m)
{
if((n==0)&&(m==0))
{return 0;}
int a[100001];
for(int i=0;i<n;i++)
{
cin>>a[i]; //输入数组
}
for(int i=0;i<n;i++)
{
if(a[i]>=m) //判断m比数组中哪个数小
{
for(int e=n+1;e>i;e--)
{
a[e]=a[e-1]; //记录i,并定义e,使e为原数组最大的一个位数加一,从尾开始一次存入原数组,使得原数组从i+1开始后推一位
}
a[i]=m; //将m插入
break;
}
}
cout<<a[0];
for(int i=1;i<n+1;i++)
{
cout<<" "<<a[i];
}
cout<<endl;
}
return 0;
}