Автомобільні номери#9090

Автомобільні номери

1 секунда
64 мегабайти
Легка

Козак Вус та Леді, їдучи автомобілем, обожнюють грати в одну гру. Вони дивляться на число, записане на номері автомобіля, та хочуть зробити, щоб воно ділилося націло на за мінімальну кількість операцій.

Операція — це додати або відняти одиницю до будь-якої цифри. Звичайно, цифри завжди мають бути від до . Тобто не можна віднімати від та додавати до .

Друзям ця гра швидко набридла, тому вони вирішили ускладнити її, доповнивши її ще одним правилом — серед усіх можливих рішень потрібно знайти лексикографічно мінімальний.

У Потоколяндії автомобільні номери досить великі, тому грати в цю гру складно, тому вони просять вас написати програму, яка буде грати за них.

Вхідні дані

Єдиний рядок містить цифровий рядок (1 \leq |s| \leq 1\,000\,000), де — довжина рядка. Зверніть увагу, що рядок може починатись з .

Вихідні дані

В єдиному рядку виведіть відповідь на задачу.

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Приклад 3

Loading
Loading

Примітка

У першому прикладі з можна зробити за операцій, або за операції, що є вигіднішим.

У другому прикладі з можна зробити за операцій, або за операції, що є вигіднішим.

У третьому прикладі одразу націло ділиться на , тому і є відповіддю.

Рядок лексикографічно менший за рядок , якщо і лише якщо виконується один з двох пунктів:

• — префікс , але a \neq b;

• у першій позиції, де та різні, у рядку знаходиться буква, яка зустрічається в алфавіті раніше, ніж відповідна буква у .