Контест Junior Указатели и ссылки обновлено
Удалить узлы списка с заданными значениями
Условие
Односвязный список из n целых чисел нужно очистить от всех узлов, значения которых входят в «чёрный список». Порядок оставшихся сохраняется. Попробуйте написать удаление на настоящих узлах (struct Node { int val; Node* next; };) через указатель на указатель Node**, без особого случая для головы.
Ввод: n (0 ≤ n ≤ 3000), затем n чисел списка (строка может быть пустой), затем k (0 ≤ k ≤ 3000) и k запрещённых значений. Все значения от 0 до 10⁹.
Вывод: оставшиеся значения через пробел или empty, если список опустел.
Пример 1
Ввод:
6
1 2 3 2 4 2
1
2
Вывод:
1 3 4
Пример 2
Ввод:
3
5 5 5
1
5
Вывод:
empty
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.