Рассмотрим все простые числа до 10^15, записанные словами на русском языке (каноническая запись, между словами ровно один пробел).
Пусть они записаны построчно, и строки отсортированы в алфавитном порядке.
Внимание, вопрос: какое число будет стоять на первом месте?
(исправил формулировку, изначально неправильно написал)
Возможно, вы неправильно поняли условие. В строках записаны числа словами. Вроде, в этом случае не важно чем сортировать.
Т.е. для указанных вами трёх счисел будет такой порядок:
два
сто
три
ну вобщем чем больше восьмерок там будет с начала - тем лучше. можно в принципе и алгоритмик накидать, который будет проверять простоту и преобразовывать в текст, но сейчас немного не до этого. спасибо за загадку, интересная)
В качестве подсказки: для нахождения ответа достаточно логических рассуждений и проверки нескольких конкретных чисел на простоту (я воспользовался WolframAlpha).
Так что это действительно больше загадка, а не задачка по программированию, как могло показаться на первый взгляд.
Ответ и решение.
Решал сам, мог и ошибиться. Пожалуйста, проверьте.
[details=Спойлер]Ответ: 18018018881
Решение.
Отсортируем по алфавиту отдельные слова, которые используются для текстовой записи чисел.
Начало этого списка будет выглядеть так:
восемнадцать
восемь
восемьдесят
восемьсот
два
две
…
Алгоритм будет такой: последовательно пребираем записи чисел в алфавитном порядке, пока не встретим простое число.
Число 18 очевидно простым не является, но попробуем начать запись числа со слова “восемнадцать”.
Среди слов, которые могут за ним следовать, первым по алфавиту будет “миллиардов”.
(Я специально в условии ограничил диапазон величиной 10^15, чтобы не заставлять людей вспоминать про квадриллионы. Также нужно напомнить, что устаревшее слово “биллион” не исползуется для канонической записи.)
Далее снова попробуем поставить минимальное по алфавиту слово “восемнадцать”.
Продолжая аналогично, получим следующую последовательнсть чисел в порядке перебора:
18 000 000 000
18 000 000 018
18 018 000 000
18 018 000 018
18 018 018 000
18 018 018 018
18 018 018 008
18 018 018 08*
Теперь диапазон чисел от 18018018080 до 18018018090 нужно проверить на простоту.
Я сделал запрос в WolframAlpha: prime numbers from 18018018080 to 18018018090
и получил ответ, что простых чисел в данном диапазоне нет.
Продолжаем перебор:
18 018 018 818
18 018 018 808
18 018 018 88*
В диапазоне чисел от 18018018880 до 18018018890 есть только одно простое число:
18018018881
Значит, оно и есть ответ.
P.S. Задачу увидел здесь. Обсуждалась в контексте немецкого и английского языков. Просто переформулировал её для русского.
[/details]
Если вики посмотреть - то вроде анвигинтиллион - 1066 по короткой шкале именований. но это очень много, боюсь даже вольфрамАльфа надорвется на этих диапазонах простые искать.