标签:blog tput 过程 for 个数 扑克 font style sam
一、题目:
插入排序类似于玩扑克时抓牌的过程,玩家每拿到一张牌都要插入到手中已有的牌里,使之从小到大排好序。 现在使用一个排好序的数组模拟插入排序,即输入一数时,要求按原来排序的规律将它插入数组中。 Input 有多组数据,第一行一个正整数t(t<100)表示输入数据组数,接下来有t组输入数据,每组数据占2行,
第一行包含一个整数n和x(n<1000,0<x<10000),x表示要插入的数。接下来一行包含用空格隔开n个数。 Output 对于每组输入,输出对应排好序的数列,输出到一行,两个数之间用空格隔开,行末不包含空格。 Sample Input 1 4 3 1 2 3 4 Sample Output 1 2 3 3 4
二、代码
#include<iostream> #include<stdio.h> 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<n;i++) { scanf("%d",&a[i]); } a[n]=x; //先将要插入的数放在数列的最后 for(int i=1;i<n+1;i++) { int monitor=a[i]; int j=i-1; while(a[j]>monitor && j>=0) { a[j+1]=a[j]; j--; } a[j+1]=monitor; } for(int i=0;i<n+1;i++) { printf("%d",a[i]); if(i!=n) //控制格式 printf(" "); else printf("\n"); } } return 0; }
标签:blog tput 过程 for 个数 扑克 font style sam
原文地址:http://www.cnblogs.com/hhkobeww/p/7622398.html