1029. 整理书架

Description

二哥又要整理书架了。他整理书架的方法很简单,把书架上一排所有的书全部挪到另一排的后面。现在二哥把它整理的顺序告诉你,你来告诉他整理之后的书架是什么样子的。

Input Format

读入一个数 n100

,表示书架一共有n排,接下来有n行,每行有一些数字(不多于100个数),每个数字代表一本书,每一行表述这一排书架上的书。再下来有n-1个数对,数对x,y表示把第x排的书放到第y排的后面。

Output Format

输出只有一行,输出最后一排的所有书。

Sample Input

3
1 2 3
4 5
6 7
3 1
2 1

Sample Output

1 2 3 6 7 4 5





    #include <iostream>
    #include <stdio.h>
    #include <queue>

    using namespace std;


    int main() {
        int n;
        cin>>n;
        vector<queue<int> > bookrack;

        for(int i=0;i<=n;i++){
            queue<int> q;
            char c;
            int j=1;
            while((c=getchar())!='\n'){
                if(c>='0' && c<='9'){
                    int a;
                    ungetc(c,stdin);
                    cin>>a;
                    q.push(a);
                }
            }
            bookrack.push_back(q);
        }

        int ope[n-1][2];
        //cout<<n-1<<endl;
        for(int i=0;i<n-1;i++){
            int a,b;
            cin>>a>>b;
            ope[i][0] = a;
            ope[i][1] = b;
        }

        for(int op = 0; op< n-1; op++){
            int fr = ope[op][0], to = ope[op][1];
            while(!bookrack[fr].empty()){
                bookrack[to].push(bookrack[fr].front());
                bookrack[fr].pop();
            }
        }

        for(int i = 0; i<bookrack.size();i++){
            while(!bookrack[i].empty()){
                cout<<bookrack[i].front()<<" ";
                bookrack[i].pop();
            }
        }




        return 0;
    }


转载于:https://www.cnblogs.com/bernieloveslife/p/7966894.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值