1167-银行排队之三:出队
时间: 2024-02-17 21:59:05 浏览: 74
1167-银行排队之三:出队是一道算法题,题目描述如下:
假设有n个人排队等待办理业务,每个人都有一个编号,从1到n。现在有两个队列A和B,初始时队列A为空,队列B中依次按照编号从小到大的顺序放入n个人。现在要求按照以下规则进行出队操作:
1. 从队列A中取出一个人,输出其编号。
2. 将队列B中编号为该人编号+1的人放入队列A的末尾。
3. 将队列B中编号为该人编号+2的人放入队列A的末尾。
4. 重复步骤1-3,直到队列A为空。
要求编写一个程序,给定n个人的编号,输出按照上述规则进行出队操作后的输出序列。
示例输入:
5
示例输出:
1 2 3 4 5
解释:
初始时,队列A为空,队列B为1 2 3 4 5。
第一次出队操作:从队列A中取出1,将2和3放入队列A末尾,此时队列A为2 3。
第二次出队操作:从队列A中取出2,将3和4放入队列A末尾,此时队列A为3 4。
第三次出队操作:从队列A中取出3,将4和5放入队列A末尾,此时队列A为4 5。
第四次出队操作:从队列A中取出4,将5放入队列A末尾,此时队列A为5。
第五次出队操作:从队列A中取出5,此时队列A为空。