Це послідовність A054261 .
- е просте число стримування є найменшим числом , яке містить перші простих чисел як подстрок. Наприклад, число є найменшим числом, яке містить перші 3 прайми в якості підрядків, що робить його 3-м простим номером стримування.
Неважливо зрозуміти, що перші чотири прості числа обмежень складають , , і , але потім стає цікавіше. Оскільки наступного простого числа - 11, наступний номер не є 235711 , але це оскільки він визначається як найменше число з властивістю.
Однак справжній виклик виникає, коли ви виходите за межі 11. Наступний номер основного стримування - . Зверніть увагу, що в цьому числі підрядки 11та 13перекриваються. Кількість3 також перекривається числом 13.
Неважко довести, що ця послідовність збільшується, оскільки наступному номеру необхідно виконати всі критерії числа до нього та мати ще одну підрядку. Однак послідовність не суворо зростає, як показують результати за n=10і n=11.
Вхідні дані
Єдине ціле число n>0(я думаю, ви також могли мати його 0-індексованим, тоді роблячи n>=0)
Вихідні дані
Або перший nпростий номер стримування, або список, що містить перші nпрості номери стримування.
Я знайшов поки що цифри:
1 => 2
2 => 23
3 => 235
4 => 2357
5 => 112357
6 => 113257
7 => 1131725
8 => 113171925
9 => 1131719235
10 => 113171923295
11 => 113171923295
12 => 1131719237295
Зауважимо, що це n = 10і n = 11те саме число, оскільки - найменше число, яке містить усі числа , але воно також містить .
Оскільки це позначено кодом гольфу, займіться гольфу! Рішення грубої сили дозволені, але ваш код повинен працювати для будь-якого введення теоретично (це означає, що ви не можете просто об'єднати перші п-прайси). Щасливого гольфу!
Pстворює оператор явне відображення, щоб перевірити наявність простих чисел у номері (замість того, щоб перевірити, чи є число у масиві простих чисел)? Це прекрасне рішення, я сумніваюся, ви могли б прийняти будь-яке рішення, використовуючи менше команд.