8675309を印刷するための要件を満たすための一時パッチの+6バイト
。これに対処するために、ゴルファー的ではあるが遅いアプローチに移行する-5バイト。
“⁹Ṁ:’©D‘ẋ“2Ṿ’R®ÆR¤ṁḢ€;®Y
TryItOnlineで実行するには遅すぎますが、ローカルで数分で実行され、その間にラインフィードを挟んで以下に示す数値が生成されます(以下の括弧内にスキップされた素数の数):
2, 29, 59, 97, 127, 149, 151, 199, 257, 293, 349, 383, 409, 419, ...
(8) (6) (7) (5) (3) (0) (9) (8) (6) (7) (5) (3) (0)
..., 8674537, 8674727, 8674867, 8675003, 8675053, 8675113, 8675137, 8675309
(8) (6) (7) (5) (3) (0) (4)*
*最後は単にリストに追加されるため、4の有効なスキップのみです。
8675309の代わりに3659を使用するバージョンについては、ここをクリックしてください。4スキップの19セット(7の12937セットではなく)と3659(6の有効なスキップ)を追加したバージョンです。
どうやって?
“⁹Ṁ:’©D‘ẋ“2Ṿ’R®ÆR¤ṁḢ€;®Y - Main link: no arguments
“⁹Ṁ:’ - base 250 number: 8675309
© - save in register
D - convert to a decimal list: [8, 6, 7, 5, 3, 0, 9]
‘ - increment: [9,7,8,6,4,1,10]
“2Ṿ’ - base 250 number: 12937
ẋ - repeat: [9,7,8,6,4,1,10,9,7,8,6,4,1,10, ... ,9,7,8,6,4,1,10]
R - range (vectorises) [[1,2,3,4,5,6,7,8,9],[1,2,3,4,5,6,7], ...]
¤ - nilad followed by link(s) as a nilad
® - retrieve value from register: 8675309
ÆR - prime range [2,3,5,7, ... ,8675309]
ṁ - mould the primes like the range list:
[[2,3,5,7,11,13,17,19,23],[29,31,37,41,43,47,53],...]
Ḣ€ - head €ach: [2,29,59,97,127,149,151,199, ..., 8675137]
® - retrieve value from register: 8675309
; - concatenate: [2,29,59,97,127,149,151,199, ..., 8675137, 8675309]
Y - join with line feeds
- implicit print