一、题目:
插入排序类似于玩扑克时抓牌的过程,玩家每拿到一张牌都要插入到手中已有的牌里,使之从小到大排好序。现在使用一个排好序的数组模拟插入排序,即输入一数时,要求按原来排序的规律将它插入数组中。Input有多组数据,第一行一个正整数t(t<100)表示输入数据组数,接下来有t组输入数据,每组数据占2行, 第一行包含一个整数n和x(n<1000,0<10000),x表示要插入的数。接下来一行包含用空格隔开n个数。Output对于每组输入,输出对应排好序的数列,输出到一行,两个数之间用空格隔开,行末不包含空格。Sample Input14 31 2 3 4Sample Output1 2 3 3 4
二、代码
#include#include using namespace std;int main(){ int a[1005]; int t; scanf("%d",&t); while(t--){ int n,x; scanf("%d%d",&n,&x); for(int i=0;i monitor && j>=0) { a[j+1]=a[j]; j--; } a[j+1]=monitor; } for(int i=0;i