#include <iostream>
#include <stack>
using namespace std;
int main() {
stack <int> q;
int a, n, b, j = 0, c;
cin >> n;
for(int i = 0; i < n; i++){
cin >> a;
q.push(a);
}
пример: 5,4,3,2,1;
я хочу удалить сразу 5 и 4
В данной реализации имеется только функция pop()
поэтому в вашем случае
q.pop();
q.pop();
Если вы хотите удалить с любого места стека, а не с хвоста, то придется иметь еще один стек помощник:
stack<int> q, h;
// положим в стек q целые от 10 до 0
for (int i = 10; i > 0; --i)
q.push(i);
//допустим я хочу удалить 4 и 5
while (q.top() != 4) {
h.push(q.top());
q.pop();
}
//теперь 4 и 5 в хвосте стека. Удалим их
q.pop();
q.pop();
// скопирум из h в q
while (!h.empty()) {
q.push(h.top());
h.pop();
}
// теперь в q есть 10, 9, 8, 7, 6, 3, 2, 1
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости