2338. 队列的蛇皮操作
1000ms
256MB
简单
队列
题目描述
队列(Queue)是一种重要的数据结构,它遵循“先进先出”(First In First Out, FIFO)的原则。
松鼠哈利在魔法森林里修了一条窄窄的独木桥。由于独木桥太窄,松鼠们必须排成一队依次过桥。最先来排队的松鼠站在最前面,也最先过桥。
现在请你模拟以下操作:
1. 输入 5 个整数,并将它们依次进行**入队**(Push)操作。
2. 连续进行 3 次**出队**(Pop)操作,并按照出队(过桥)的顺序输出这些元素。
3. 以上操作完成后,输出此时的**队首**(Front)元素。
输入格式
一行,包含 5 个整数,用空格隔开。
输出格式
输出共两行:
- 第一行:3 个出队元素,按出队顺序输出,用空格隔开。
- 第二行:完成出队操作后的队首元素。
样例 1
输入 (Input)
4 9 12 6 7
输出 (Output)
4 9 12 6
- $1 \le \text{整数} \le 1000$。
- **算法提示**:
在 C++ 中,你可以使用标准模板库(STL)中的 `std::queue` 容器来轻松实现:
- `q.push(x)`:将元素 $x$ 入队(插入到队尾)。
- `q.pop()`:弹出队首元素(注意该函数不返回元素值)。
- `q.front()`:获取队首元素的值。
- **过程解析**:
输入 `4 9 12 6 7` 后,队列内从队首到队尾依次为 `{4, 9, 12, 6, 7}`。
- 第一次出队:弹出队首的 `4`,队列变为 `{9, 12, 6, 7}`。
- 第二次出队:弹出队首的 `9`,队列变为 `{12, 6, 7}`。
- 第三次出栈:弹出队首的 `12`,队列变为 `{6, 7}`。
- 此时的队首元素为 `6`。
› 输入 stdin
CtrlShiftEnter
‹ 输出 stdout
错误 stderr
操作成功