#include <iostream>
#include <queue> // Required for using the queue container
using namespace std;
int main() {
// 1. Initialize an empty queue of integers
queue<int> q1; //
// push(x): Adds elements to the back of the queue
q1.push(10); // 10 is the FIRST element in
q1.push(20); //
q1.push(30); // 30 is the LAST element in
// size(): Returns the current number of elements
cout << "Queue size after PUSH: " << q1.size() << endl; // Output: 3
// front(): Accesses the element at the front (10)
cout << "Front element: " << q1.front() << endl; // Output: 10
// back(): Accesses the element at the back (30)
cout << "Back element: " << q1.back() << endl; // Output: 30
// pop() removes the front element
q1.pop(); // The queue after pop: 20, 30
// Final empty() check
cout << "Empty? " << (q1.empty() ? "Yes" : "No") << endl; // Output: No
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8cXVldWU+IC8vIFJlcXVpcmVkIGZvciB1c2luZyB0aGUgcXVldWUgY29udGFpbmVyCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgIC8vIDEuIEluaXRpYWxpemUgYW4gZW1wdHkgcXVldWUgb2YgaW50ZWdlcnMKICAgIHF1ZXVlPGludD4gcTE7IC8vCgogICAgLy8gcHVzaCh4KTogQWRkcyBlbGVtZW50cyB0byB0aGUgYmFjayBvZiB0aGUgcXVldWUKICAgIHExLnB1c2goMTApOyAvLyAxMCBpcyB0aGUgRklSU1QgZWxlbWVudCBpbgogICAgcTEucHVzaCgyMCk7IC8vCiAgICBxMS5wdXNoKDMwKTsgLy8gMzAgaXMgdGhlIExBU1QgZWxlbWVudCBpbgoKICAgIC8vIHNpemUoKTogUmV0dXJucyB0aGUgY3VycmVudCBudW1iZXIgb2YgZWxlbWVudHMKICAgIGNvdXQgPDwgIlF1ZXVlIHNpemUgYWZ0ZXIgUFVTSDogIiA8PCBxMS5zaXplKCkgPDwgZW5kbDsgLy8gT3V0cHV0OiAzCgogICAgLy8gZnJvbnQoKTogQWNjZXNzZXMgdGhlIGVsZW1lbnQgYXQgdGhlIGZyb250ICgxMCkKICAgIGNvdXQgPDwgIkZyb250IGVsZW1lbnQ6ICIgPDwgcTEuZnJvbnQoKSA8PCBlbmRsOyAvLyBPdXRwdXQ6IDEwCgogICAgLy8gYmFjaygpOiBBY2Nlc3NlcyB0aGUgZWxlbWVudCBhdCB0aGUgYmFjayAoMzApCiAgICBjb3V0IDw8ICJCYWNrIGVsZW1lbnQ6ICIgPDwgcTEuYmFjaygpIDw8IGVuZGw7IC8vIE91dHB1dDogMzAKCiAgICAvLyBwb3AoKSByZW1vdmVzIHRoZSBmcm9udCBlbGVtZW50CiAgICBxMS5wb3AoKTsgLy8gVGhlIHF1ZXVlIGFmdGVyIHBvcDogMjAsIDMwCgogICAgLy8gRmluYWwgZW1wdHkoKSBjaGVjawogICAgY291dCA8PCAiRW1wdHk/ICIgPDwgKHExLmVtcHR5KCkgPyAiWWVzIiA6ICJObyIpIDw8IGVuZGw7IC8vIE91dHB1dDogTm8KICAgIHJldHVybiAwOwp9