问题描述
程序开始请你给一组待排序数据进行小到大排序。接下来程序会输入多个X请你将X插入后的数据重新进行小到大的序
输入格式
第一行N(N<=20000)
第二行N个无序数据(30000以内)
多行,表示插入的X(不确定有几个,最多100个X)
输出格式
每个X插入后相应的小到大序列
样例输入
一个满足题目要求的输入范例。
例:
3
10 30 26
5
18
样例输出
与上面的样例输入对应的输出。
5 10 26 30
5 10 18 26 30
代码
#include<stdio.h>
int main(){
int t,n,a[20100],i,h,j;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
while(scanf("%d",&a[i])!=EOF){
n++;
for(i=1;i<n;i++){
h=i-1;
t=a[i];
while(h>=0&&a[h]>t){
a[h+1]=a[h];
h--;
}
a[h+1]=t;
}
for(j=0;j<n-1;j++){
printf("%d ",a[j]);
}
printf("%d\n",a[j]);
}
return 0;
}