zoukankan      html  css  js  c++  java
  • 1014-数据的插入与删除

    描述

     

    在一组数据(数目不超过10000)中,插入新数,删除所有与给定数相等的数据。

    输入

     

    第一行是未排序的一组非负整数,数目不超过10000。以-1作为结束标志。

    第二行是要插入的数。

    第三行是要删除的数。

    输出

     

    第一行输出自小到大排好序的数。如果没有元素,输出“No elements.”(不包括引号)。

    第二行输出插入后自小到大排好序的数,以“,”隔开。

    第三行输出删除后自小到大排好序的数,以“,”隔开。如果没有元素,输出“No elements.”(不包括引号)。

    样例输入

    100 98 79 63 44 99 -1

    88

    79

    样例输出

    44,63,79,98,99,100

    44,63,79,88,98,99,100

    44,63,88,98,99,100

    #include<iostream>
    using namespace std;
    int main()
    {
        int m=0,i,j,jia,jian,temp,str[10001];
        while(cin>>str[m]&&str[m]!=-1)
        {m++;}
        cin>>jia>>jian;
        str[m]=jia;
        for(j=m-2;j>=0;j--)
        {
            for(i=0;i<=j;i++)
            {
                if(str[i]>str[i+1])
                {
                    temp=str[i];
                    str[i]=str[i+1];
                    str[i+1]=temp;
                }
            }
        }
        if(m==0)
            cout<<"No elements."<<endl;
        else{
        for(i=0;i<=m-2;i++)
        {
            cout<<str[i]<<',';
        }
        cout<<str[m-1]<<endl;
        }
    
        for(j=m-1;j>=0;j--)
        {
            for(i=0;i<=j;i++)
            {
                if(str[i]>str[i+1])
                {
                    temp=str[i];
                    str[i]=str[i+1];
                    str[i+1]=temp;
                }
            }
        }
        
        for(i=0;i<=m-1;i++)
        {
            cout<<str[i]<<',';
        }
        cout<<str[m]<<endl;
        
        for(i=0;i<=m;i++)
        {
            if(str[i]==jian)
            {
                for(j=i;j<=m-1;j++)
                {
                    str[j]=str[j+1];
                }
                m=m-1;
                i=i-1;
            }
        }
    
        if(m==-1)
        {
            cout<<"No elements."<<endl;
        }
        else
        if(m==0)
        {
            cout<<str[m]<<endl;
        }
        else{
        for(i=0;i<=m-1;i++)
        {
            cout<<str[i]<<',';
        }
        cout<<str[m]<<endl;}
        return 0;
    } 
    

      

  • 相关阅读:
    l1-010
    l1-009
    L1-008修改
    l1-008
    Codeforces Round #406 (Div. 2)
    求N!的长度【数学】 51nod 1058 1130
    51nod 1090 & 1267 【二分简单题】
    Codeforces Round #405 (Div. 2)
    Codeforces Round #404 (Div. 2)
    PAT 天梯赛真题集(L2、L3)
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436508.html
Copyright © 2011-2022 走看看