Позначення Діпутс
Нотація Diputs — це спосіб представлення невід'ємних цілих чисел за допомогою спеціальних символів. Вона використовує 9 символів, починаючи з найменш значущого:
_.,- ='^
Кожен символ має обмежену кількість використань у представленні числа.
Число в нотації Diputs записується, починаючи з найзначущішої цифри, наприклад:
"""^^ -,..__
Усі можливі представлення чисел у цій нотації розташовуються в певному порядку. Число A йде після числа B, якщо в його представленні більше символів '"' (найзначуща цифра), ніж у B. Якщо кількість символів '"' однакова, порівнюється кількість символів '^', і так далі. Потім ми нумеруємо цю послідовність, починаючи з 1, що створює карту для визначення, як числа представлені в нотації Diputs. Нуль представлений символом 'O' (код 79).
Приклади:
Вхідні дані
Вхід містить числа в десятковій нотації, числа в нотації Diputs, а також інший текст.
Вихідні дані
Ви повинні вивести ті ж числа, але в іншій нотації: числа в десятковій нотації повинні бути перетворені в нотацію Diputs, а числа в нотації Diputs — у десяткові. Усі числа на вході є невід'ємними і не перевищують максимальне число, яке можна представити в нотації Diputs. Можливо, що числа не будуть розділені пробілом або іншими символами. Ви повинні розбирати числа жадібним способом: при читанні числа ви повинні брати максимальну кількість символів, які можуть утворити десяткове або Diputs представлення числа. Наприклад, якщо у вас є три символи підкреслення ("___"), ви повинні розібрати це як числа "__" (2) і "_" (1) в нотації Diputs. У цьому випадку, результуючий рядок буде "21". При розборі десяткових чисел ваша програма повинна працювати так само. Не повинно бути провідних нулів у десяткових числах. Наприклад, ви повинні розібрати рядок "020" як десяткові числа 0 і 20, і результат буде "O,..__". Якщо ви отримаєте десяткове число більше, ніж максимальне число, яке можна представити в нотації Diputs, ви повинні розділити його на два або більше десяткових чисел жадібним способом, як описано.
Деякі приклади:
Оскільки ми вважаємо, що ваше завдання занадто легке, ви повинні сортувати числа в порядку зростання, якщо загальна кількість чисел на вході непарна. Тільки числа повинні бути переупорядковані; нотація числа в певному місці не повинна змінюватися. Наприклад, для входу "2 O _" ви повинні спочатку розпізнати нотацію (десяткова, diputs, diputs), потім перетворити її в "__ 0 1", інвертуючи нотацію (тепер це diputs, десяткова, десяткова), і потім відсортувати числа, зберігаючи нотацію. Таким чином, відсортований масив — це 0, 1 і 2, нотації — (diputs, десяткова, десяткова), тому відповідь повинна бути "O 1 2". Подивіться на зразок входу для кращого розуміння.
Розмір вхідних і вихідних даних не перевищуватиме 1 мегабайт (10^6 байт).