Удаление дубликатов из отсортированного вектора с подсчетом

C++ Средний vectors

Задача «Удаление дубликатов из отсортированного вектора с подсчетом»

Дан отсортированный по возрастанию вектор целых чисел. Необходимо удалить все дубликаты, оставив только уникальные элементы, но при этом подсчитать, сколько раз каждое число встречалось в исходном векторе. Результат вывести в виде двух векторов: первый содержит уникальные числа, второй — их количество. Используйте std::vector и алгоритмы.

Формат ввода

В первой строке целое число N (1 ≤ N ≤ 1000) — количество элементов. Во второй строке N целых чисел, отсортированных по возрастанию, каждое по модулю не превышает 10^9.

Формат вывода

В первой строке целое число K — количество уникальных элементов. Во второй строке K целых чисел — уникальные элементы в порядке возрастания. В третьей строке K целых чисел — количество повторений каждого элемента.

Примеры

Пример 1

ВВОД
5 10 10 10 10 10
ВЫВОД
1 10 5
main.cpp