杭電oj 2019

Problem Description

有n(n<=100)個整數,已經按照從小到大順序排列好,現在另外給一個整數x,請將該數插入到序列中,並使新的序列仍然有序。

 

 

Input

輸入數據包含多個測試實例,每組數據由兩行組成,第一行是n和m,第二行是已經有序的n個數的數列。n和m同時爲0標示輸入數據的結束,本行不做處理。

 

 

Output

對於每個測試實例,輸出插入新的元素後的數列。

 

 

Sample Input


 

3 3 1 2 4 0 0

 

 

Sample Output


 

1 2 3 4

//插入排序 
#include <cstdio>
int a[105];

int main(){
	int n,m;
	while(scanf("%d %d",&n,&m) && (n || m)){
		int te = 0;
		for(int i = 0;i < n;i++)
		{
			scanf("%d",&a[i]);
			if(m > a[i])	
				te++;
		}
		
	
		for(int i = n-1;i >= te;i--)	
		{
			a[i+1] = a[i];
		}
		
		
	//	printf("aa%daa",a[n-1]);
		
		a[te] = m;

//			for(int i = 0;i <= n;i++)	
//		{
//			printf("%d ",a[i]);
//		}
			

		
		for(int i = 0;i <= n-1;i++)	
		{
			if(i == 0 )	printf("%d",a[i]);
			else
				printf(" %d",a[i]);
		}
		printf(" %d\n",a[n]);
	}
//	
	
	
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章