Плюсануть
Поделиться
Класснуть
Запинить


Условие задачи Прогресс
ID 30684. Множества в C++
Темы: Standard Template Library    Множества   

Входные данные
Дано число N (1 <= N <= 100000) – кол-во запросов. В следующих N строках содержится символ ‘+’ или ‘-’ и число a (1 <= a <= 1000000000). Если символ – ‘+’, то число a добавляется в множество, иначе – удаляются все значения a, которые были добавлены ранее.
Гарантируется, что при удалении числа, оно содержится в множестве.

Выходные данные
Требуется вывести в порядке возрастания все уникальные элементы в множестве после выполнения всех запросов или «-1», если в множестве нет элементов.

 

Примеры
Входные данные Выходные данные
1
3
+ 1
+ 2
- 1
2
2
3
+ 1
+ 1
- 1
-1
3
3
+ 1
+ 1
+ 1
1

ID 29643. Запросы в массив
Темы: Standard Template Library   

Вам нужно реализовать структуру данных на базе массива, которая сможет отвечать на данные типы запросов:

0 - вывести размер массива и знак перехода на новую строку;
1 x - добавить в конец массива число x;
2 - удалить последний элемент массива;
3 x y - вставить число y между элементами массива x и x + 1;
4 x - удалить элемент №x;
5 - вывести все элементы массива в порядке их следования в нем через пробел. В конце выведите знак перехода на новую строку;
6 x - изменить размер массива на x. Если x меньше текущего размера массива, то все элементы, начиная с элемента №x отбрасываются. Если x больше текущего размера массива, то появившиеся элементы массива будут равны 0.
 
Входные данные: 
- в первой строке содержится число N (\(1 <= n <= 100\));
- в следующих N строках содержатся запросы в формате, записанном в условии.
 
Выходные данные: выведите ответы на запросы типа 0 и 5.
 
Примеры
Входные данные Выходные данные
1
9
0
1 5
2
0
1 0
1 3
2
1 1
5
0
0
0 1