数列有序! 2019 水题

来源:互联网 发布:物流软件的基本功能 编辑:程序博客网 时间:2024/04/29 17:22

数列有序!

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 34698    Accepted Submission(s): 14878


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

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

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

Sample Input
3 31 2 40 0
 

Sample Output
1 2 3 4
 

Author
lcy
 

Source
C语言程序设计练习(三)
 

Recommend
lcy



#include<iostream>
#include<cstdlib>
using namespace std;
int comp(const void *a,const void *b)           //排序
{
    return *(int *)a-*(int *)b;
}
int main()
{
    int n,m,a[102];
    while(scanf("%d%d",&n,&m)!=EOF)
    {
        if(n==0&&m==0)
        break;
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
    }
    a[n]=m;
    qsort(a,n+1,sizeof(int),comp);         //插入后排序
    for(int i=0;i<=n;i++)
    {
        if(i!=n)
        cout<<a[i]<<" ";
        else
        cout<<a[i]<<endl;
    }
    }
    return 0;
}

原创粉丝点击