山东理工大学ACM平台题答案 数列有序! 1244

来源:互联网 发布:qq三国79js打人连招 编辑:程序博客网 时间:2024/04/30 05:26

                                       数列有序!
Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^
题目描述
                   有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数m,请将该数插入到序列中,并使新的序列仍然有序。
输入
                 输入数据包含多个测试实例,每组数据由两行组成,第一行是n和m,第二行是已经有序的n个数的数列。n和m同时为0表示输入数据的结束,本行不做处理。
输出
                 对于每个测试实例,输出插入新的元素后的数列。
示例输入
                    3 3
                   1 2 4

                   0 0

示例输出
                 1 2 3 4

提示
 
来源
      HDOJ
示例程序
 
提交 状态 讨论   答案::

#include <stdio.h>
int main()
{
    int n, m, i, j, a[101];
    while (scanf("%d %d", &n, &m)==2, n||m)

   {
        for (i=0; i<n; i++)
            scanf("%d", a+i);
        for (i=0; i<n; i++)
            if (a[i] > m) break;
        for (j=n; j>i; j--)
            a[j] = a[j-1];
           a[i] = m;
        for (i=0; i<n; i++)
            printf("%d ", a[i]);
        printf("%d\n", a[n]);
    }
    return 0;
}

原创粉丝点击