Яндекс практикуму, текущий курс: Основы C++ ,Урок 4: Меняем размер вектора (метод resize).
Задание 1. Очередь
Отвлечёмся ненадолго от животных и смоделируем очередь людей.
Люди стоят в очереди, но никогда не уходят из её начала, зато могут приходить в конец и уходить оттуда. Также некоторые могут начинать и прекращать беспокоиться из-за того, что очередь не продвигается.
Реализуйте обработку следующих операций над очередью:
WORRY i: пометить i-го человека с начала очереди (в нумерации с 0) как беспокоящегося;
QUIET i: пометить i-го человека (в нумерации с 0) как успокоившегося;
COME k: добавить k спокойных человек в конец очереди;
COME -k: убрать k человек из конца очереди;
WORRY_COUNT: узнать количество беспокоящихся людей в очереди.
Изначально очередь пуста.
Операции WORRY, QUIET и COME реализуйте с помощью простых действий с вектором. Операцию WORRY_COUNT — с помощью честного подсчёта указанного числа.
Формат ввода
На вход программе подаётся количество операций Q, затем описания операций.
Для каждой операции WORRY i и QUIET i гарантируется, что человек с номером i существует в очереди на момент операции.
Для каждой операции COME -k гарантируется, что k не больше текущего размера очереди.
Все указанные гарантии действительно справедливы для всех запросов: проверять их не нужно, просто пишите программу, считая, что входные данные корректны.
Формат вывода
Для каждой операции WORRY_COUNT выведите одно целое число — количество беспокоящихся людей в очереди.

Фото на память.

почему твое решение не принимает практикум? у меня у самого та же самая загвоздка? как все-таки правильно?
#include
#include
#include
using namespace std;
int main(){
int Q=0; //итератор количества операций, будем делайть через while.
cin >> Q;
vector crowd(0,0);//вектор для количества людей, каждый человек в ячейке, 0 спокоен, 1 нервничает.
string command=""s;//строка для команды.
unsigned number=0;//переменная для значения команды, сразу делаем беззнаковой отсекая ввод минусовых значений.
int worry=0;//переменная для хранения нервных.
int persCome=0;//переменная для хранения ушедших/пришедших.
//пока Q больше нуля будем делать проходы по коду, в конце кода убавляем Qv на 1.
while ( Q>0 ){
//вводим команду
cin>>command;
//если команда пересчитать, то циклом for и булевой i ищем ячейки со значением true(нервный) и добавляем этих людей в worry. Выводим значение worry и очищаем переменную, чтобы при дальнейших пересчётах не добавлялись уже добавленные психи.
if(command=="WORRY_COUNT"s){
for(bool i :crowd){
if(i){
++worry;
}
}
cout<>number;
if(number < crowd.size()){
crowd.at(number)=true;
}
}
//если команда Спокоен, то делаем то же, что выше и, благодаря доктора Дуркина, помечаем человека излеченным.
if(command=="QUIET"s){
cin>>number;
if(number>persCome;
int size = crowd.size()+persCome;
if(size<=0){ //если новый размер очереди меньше/равно нуля, то очищаем вектор очереди.
crowd.clear();
}
if(size>crowd.size()){//если новый размер очереди больше очереди, то добавляем спокойных.
crowd.resize(size,false);}
else{crowd.resize(size);}//если новый размер очереди меньше очереди, то просто ресайз.
}
--Q;//отнимаем очередной шаг от Q
}
return 0;
}
ребят, кто проходил вводный курс, очень прошу поделитесь кодами. До темы множество set дошел сам. Дальше никак не успеваю его закончить а через 3 дня старт основного оплаченного. можно на почту styers123@gmail.com
int i = 0; явное присвоение
auto i =0; а тут рандомно присвоится что ли?