Найти число, образованное путем сортировки цифр N после удаления соседних дубликатов
Опубликовано: 20 Сентября, 2022
Учитывая число N , задача состоит в том, чтобы удалить соседние дубликаты числа N , а затем отсортировать цифры числа N в порядке убывания.
Пример:
Input: N=11123134
Output: 433211Input: N=22133455
Output: 54321
Подход: выполните следующие шаги, чтобы решить следующую проблему:
- Создайте карту для хранения частоты всех символов, скажем, mp .
- Создайте функцию getDigits , которая будет принимать целое число в качестве параметра и возвращать его в виде строки.
- Повторите эту строку и увеличивайте только частоту цифр, которые не имеют дубликатов в их предыдущем индексе.
- Повторите карту mp и создайте строку целых чисел, которая будет автоматически отсортирована.
- Преобразуйте эту строку в целое число и соответственно напечатайте ответ.
Ниже приведена реализация описанного выше подхода.
Временная сложность: O(logN)
Вспомогательное пространство: O(1)