【HDU-2019】数列有序

154 阅读1分钟
题目

有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数x,请将该数插入到序列中,并使新的序列仍然有序。

输入:

输入数据包含多个测试实例,每组数据由两行组成,第一行是n和m,第二行是已经有序的n个数的数列。n和m同时为0标示输入数据的结束,本行不做处理。

输出:

对于每个测试实例,输出插入新的元素后的数列。

 

 

 

样例
Sample Input
3 3
1 2 4
0 0

Sample Output
1 2 3 4

 



 

AC代码
#include <iostream>

using namespace std;

int main()
{
    int m,n;
    cin>>n>>m;
    while(n!=0 || m!=0)
    {
        int flag;
        int a[102];
        for(int i=0;i<n;i++)
        {
            cin>>a[i];
            if(m>=a[i])
            {
                flag=i;
            }
        }

        for(int i=0;i<=flag;i++)
        {
            cout<<a[i]<<" ";
        }
         cout<<m<<" ";
        for(int i=flag+1;i<n-1;i++)
        {
            cout<<a[i]<<" ";
        }
        cout<<a[n-1]<<endl;

        cin>>n>>m;
    }
}


 

题源:acm.hdu.edu.cn/showproblem…