#include <iostream>
using namespace std;
class Queue {
int size;
int* queue;
public:
Queue()
{
size = 0;
queue = new int[100];
}
void add(int data) {
queue[size] = data;
size++;
}
void print() {
if (size == 0) {
cout << "Queue is empty"<<endl;
return;
}
for (int i = 0; i < size; i++) {
cout<<queue[i]<<" <- ";
}
cout << endl;
}
};
class Queue2 : public Queue
{
private:
int size;
int* queue;
public:
Queue2()
{
size = 0;
queue = new int[100];
}
//void print()
//{
// if (size == 0) {
// cout << "Queue is empty"<<endl;
// return;
// }
// for (int i = 0; i < size; i++) {
// cout<<queue[i]<<endl;
// }
// cout << endl;
//}
};
int main() {
Queue q1;
q1.add(42); q1.add(2); q1.add(8); q1.add(1);
q1.print();
Queue2 q2;
q2.add(3); q2.add(66); q2.add(128);q2.add(5);
q2.add(111);q2.add(77890);
q2.print();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPiAKdXNpbmcgbmFtZXNwYWNlIHN0ZDsgIAogCmNsYXNzIFF1ZXVlIHsgIAogaW50IHNpemU7ICAKIGludCogcXVldWU7ICAKICAKIHB1YmxpYzogCiBRdWV1ZSgpIAogeyAgCiAgc2l6ZSA9IDA7IAogIHF1ZXVlID0gbmV3IGludFsxMDBdOyAKIH0KIHZvaWQgYWRkKGludCBkYXRhKSB7ICAKICBxdWV1ZVtzaXplXSA9IGRhdGE7ICAKICBzaXplKys7IAogfSAKIAogdm9pZCBwcmludCgpIHsgIAogIGlmIChzaXplID09IDApIHsgIAogICBjb3V0IDw8ICJRdWV1ZSBpcyBlbXB0eSI8PGVuZGw7ICAKICAgcmV0dXJuOyAgCiAgfSAgCiAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHsgIAogICBjb3V0PDxxdWV1ZVtpXTw8IiA8LSAiOyAKICB9ICAKICBjb3V0IDw8IGVuZGw7IAogfSAKfTsgIAoKY2xhc3MgUXVldWUyIDogcHVibGljIFF1ZXVlIAp7CiBwcml2YXRlOgogICBpbnQgc2l6ZTsgIAogICBpbnQqIHF1ZXVlOyAgCiAgCiBwdWJsaWM6IAogUXVldWUyKCkgCiB7ICAKICBzaXplID0gMDsgCiAgcXVldWUgPSBuZXcgaW50WzEwMF07ICAKIH0KCiAvL3ZvaWQgcHJpbnQoKQogLy97CiAvLyBpZiAoc2l6ZSA9PSAwKSB7ICAKIC8vICBjb3V0IDw8ICJRdWV1ZSBpcyBlbXB0eSI8PGVuZGw7ICAKIC8vICByZXR1cm47ICAKIC8vIH0gIAogLy8gZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHsgCiAvLyAgY291dDw8cXVldWVbaV08PGVuZGw7IAogLy8gfSAgCiAvLyBjb3V0IDw8IGVuZGw7IAogLy99Cn07IAogCiAKaW50IG1haW4oKSB7ICAKUXVldWUgcTE7ICAKcTEuYWRkKDQyKTsgcTEuYWRkKDIpOyBxMS5hZGQoOCk7ICBxMS5hZGQoMSk7IApxMS5wcmludCgpOyAKICAgICAKUXVldWUyIHEyOyAKcTIuYWRkKDMpOyBxMi5hZGQoNjYpOyBxMi5hZGQoMTI4KTtxMi5hZGQoNSk7CnEyLmFkZCgxMTEpO3EyLmFkZCg3Nzg5MCk7IApxMi5wcmludCgpOyAKIAogcmV0dXJuIDA7ICAKfQ==