Чтобы найти наименьшее возможное число после вычеркивания цифр, необходимо оставить как можно больше нулей в начале числа, а если нули закончатся — выбирать наименьшие из возможных цифр (1, 2, 3...). 1. Анализ исходной последовательности Сначала определим общее количество цифр в ряду от 1 до 60:
- Числа 1–9: 9 цифр.
- Числа 10–60: число. Каждое состоит из 2 цифр, итого цифры. Всего цифр: цифр.
Нам нужно вычеркнуть 100 цифр. Значит, в остатке должно получиться число из 11 цифр ( ). 2. Стратегия поиска наименьшего числа Чтобы число было минимальным, мы стремимся к тому, чтобы старшие разряды были как можно меньше. Идеальный вариант — последовательность, начинающаяся с нескольких нулей. Однако первая цифра числа не может быть нулем, если только всё число не превращается в 0 (но у нас останется 11 цифр). В данном случае мы ищем способ оставить нули на максимально ранних позициях. Посмотрим на нули в ряду: 10, 20, 30, 40, 50, 60 — всего 6 нулей. 3. Пошаговое вычеркивание Шаг 1: Формируем начало числа Попробуем оставить как можно больше нулей. Чтобы перед нулем стояла минимально возможная цифра, вычеркнем всё перед цифрой 1 из числа 10.
- Вычеркиваем
123456789. - Оставляем
1(от числа 10). - Оставляем
0(от числа 10).
Теперь у нас есть10....
Шаг 2: Собираем остальные нули Между нулями стоят другие цифры. Чтобы минимизировать число, мы должны вычеркнуть все цифры между нулями:
- Вычеркиваем всё между
0(из 10) и0(из 20): это цифры1112131415161718192. - Оставляем
0(из 20). - Вычеркиваем всё до
0(из 30): оставляем0. - Вычеркиваем всё до
0(из 40): оставляем0. - Вычеркиваем всё до
0(из 50): оставляем0. - Вычеркиваем всё до
0(из 60): оставляем0.
На данный момент мы имеем число 1000000 (1 и шесть нулей). Посчитаем, сколько цифр мы уже «использовали» (оставили или вычеркнули): Мы дошли до конца ряда (число 60). Все цифры от 1 до 60 либо вычеркнуты, либо оставлены. Шаг 3: Подсчет остатка Нам нужно оставить 11 цифр. Мы уже оставили:
1(от 10)0(от 10)0(от 20)0(от 30)0(от 40)0(от 50)0(от 60)
Итого: 7 цифр. Нам не хватает еще 4 цифр.
Поскольку мы уже дошли до конца списка (число 60), нам нужно было «по дороге» не вычеркивать какие-то цифры в самом конце, чтобы добрать их до 11. 4. Итоговый выбор цифр Чтобы число осталось наименьшим, дополнительные 4 цифры нужно брать из самого конца ряда, так как они пойдут в младшие разряды. Оставляем:
1(от 10)0(от 10)0(от 20)0(от 30)0(от 40)0(от 50)- Цифры из последних чисел:
51, 52, 53, 54, 55, 56, 57, 58, 59, 60.
Чтобы число было минимальным, после шести нулей должны идти самые маленькие цифры из доступных в конце. В конце ряда у нас остались цифры 51525354555657585960. Из них лучше всего оставить 1 (от 51), 2 (от 52), 3 (от 53) и так далее, но они разделены пятерками. Самый выгодный вариант — оставить: 100000 (от 10, 20, 30, 40, 50) и затем из хвоста 51525354555657585960 выбрать минимальные цифры. Если мы оставим нули от 10, 20, 30, 40, 50, то у нас 6 цифр. Нужно еще 5. Оставшаяся часть строки после 50: 51525354555657585960. Из нее выбираем самые малые: 1, 2, 3, 4 и 0 из числа 60. Итоговое число: 10000012340 Хотите, я проверю, можно ли получить число еще меньше, если начать не с «1», а попытаться уместить больше цифр после нулей?