Задачі
Градуйований лексикографічний порядок
Градуйований лексикографічний порядок
Розглянемо цілі числа від \textbf{1} до \textbf{n}. Назвемо \textit{вагою числа} його суму цифр, і позначимо вагу числа \textbf{x} як \textbf{w}(\textbf{x}).
Потім упорядкуємо числа у так званому \textit{градуйованому лексикографічному порядку}. Нехай задано два числа \textbf{a} та \textbf{b}. Якщо \textbf{w}(\textbf{a}) < \textbf{w}(\textbf{b}), то число \textbf{a} йде у градуйованому лексикографічному порядку до числа \textbf{b}. Якщо ж \textbf{w}(\textbf{a}) = \textbf{w}(\textbf{b}), тоді число \textbf{a} йде у градуйованому лексикографічному порядку до числа \textbf{b} якщо і лише якщо десяткове подання числа \textbf{a} лексикографічно менше десятикового подання числа \textbf{b}.
Наприклад, у цьому порядку:
\begin{itemize}
\item число \textbf{120} йде до числа \textbf{4};
\item число \textbf{555} йде до числа \textbf{78};
\item число \textbf{20} йде до числа \textbf{200}.
\end{itemize}
За заданими \textbf{n} і \textbf{k}, знайдіть номер числа \textbf{k} і число, яке знаходиться на \textbf{k}-му місці, у градуйованому лексикографічному упорядкуванні натуральних чисел від \textbf{1} до \textbf{n}.
\InputFile
У вхідному файлі записані числа \textbf{n} і \textbf{k} (\textbf{1} ≤ \textbf{k} ≤ \textbf{n} ≤ \textbf{10^18}).
\OutputFile
У першому рядку вихідного файлу виведіть номер числа \textbf{k}.
У другому рядку виведіть число, яке знаходиться на \textbf{k}-му місці.
Вхідні дані #1
20 10
Вихідні дані #1
2 14