Автор: | Андрей Станкевич | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 512 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
Аня любит, когда числа состоят из одинаковых цифр. Поэтому ей нравятся числа 777 или 5555, а вот число 1234 ей совсем не нравится.
Иногда у Ани бывает хорошее настроение, тогда ей по прежнему нравятся все числа, состоящие из одинаковых цифр, но также нравятся числа, в которых все цифры кроме одной одинаковые, как, например, в числе 77727.
У Ани есть число x. Аня хочет найти минимальное целое число y ≥ x, которое ей понравится.
Требуется написать программу, которая по заданному целому числу x и информации, хорошее ли настроение у Ани, находит минимальное целое число y ≥ x, которое нравится Ане.
Первая строка ввода содержит целое число x
(обратите внимание, что число x не может быть сохранено в стандартном 32-битном типе данных,
необходимо использовать 64-битный тип данных, например long long
в C++,
int64
в Паскале).
Вторая строка ввода содержит число k, равное 0 или 1. Значение k = 1 означает, что у Ани хорошее настроение, а значение k = 0 — что это не так.
Следует вывести одно целое число y.
Должны выполняться следующие свойства:
1 ≤ x ≤ 1017
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.
Подзадача | Баллы | Доп. ограничения | Необходимые подзадачи | Информация о проверке |
---|---|---|---|---|
1 | 15 | 1 ≤ x ≤ 105, k = 0 | полная | |
2 | 20 | 1 ≤ x ≤ 1017, k = 0 | 1 | первая ошибка |
3 | 21 | 1 ≤ x ≤ 105, k = 0 или k = 1 | 1 | полная |
4 | 44 | 1 ≤ x ≤ 1017, k = 0 или k = 1 | 1 − 3 | первая ошибка |
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|