私はこの質問について話している、あなたが少し混乱している場合はそれを見てみましょう。
主な任務
あなたの仕事は、連結された整数を降順で出力することですが、ヒットするたびに最大整数を増やします1
(この質問では、1は素数と見なされます)。これは最初の質問と何ら変わりはありませんが、ここで注意が必要な部分があります。出力されるすべての数値は素数にすぎない場合があります。これらは、スペースや改行なしで1つの文字列にまとめられます。入力も素数になります。
例:
1
21
321
5321
75321
1175321
Valid output:
1213215321753211175321
入力
コードに入力できるのは、印刷する最高の素数のみです。この入力はどこからでも入力できます(グラフィカル、STDIN)。入力は素数であることが保証されます。
出力
結果の数値を出力する必要があります。この数を得るには、カウントダウンを続け、それが素数である場合にのみ数を数え、すべての結果を1つの数に結び付けます。最後の番号「行」(例7, 5, 3, 2, 1
)は完全に印刷する必要があります。出力は、読み取り可能なものであれば何でもかまいません(数字、文字列、グラフィカル)。テストケースをチェックするための同じ正規表現パターンが適用されます。
^(\D*(\d)+\D*|)$
出力がこのパターンと一致しない場合、コードは無効です。
ルール
- 入力は素数であることが保証されており、必要でない限り、エラー処理を含めないでください。
- 出力は、完全に接続された数値のみである可能性があるため、改行や改行でさえも分割されません。
- アルゴリズムは、最初のインスタンス
N
(たとえば、17
in1175321
)をチェックするのではなくN
、実際の番号としての最初のインスタンスをチェックする必要があります。 - 入力は確実に確実に行われます。必要がない限り、処理を追加しないでください。
テストケース
Input: -2, 0
Output: Any, or none (number isn't positive)
Input: 9
Output: Any, or none (number isn't prime)
Input: 1
Output: 1
Input: 7
Output: 121321532175321
Input: 23
Output: 1213215321753211175321131175321171311753211917131175321231917131175321
勝者
これはcode-golfであるため、バイト長が最小のコードの作成者が勝ちます!
1
を作成することは、仕様と直接矛盾します。これにより、入力番号が素数であることが「保証」されます。2.出力仕様には、複数の矛盾とあいまいさが含まれているようです。「最後の数「行」(たとえば、7、5、3、2、1)を完全に印刷する必要があります」-他の人は印刷しませんか?「テストケースをチェックするための同じ正規表現パターンが適用されます」が、「出力は完全に接続された数値のみであるため、何によっても分割されない」ことはその正規表現に矛盾します。しかし、正規表現は空の文字列を許可するため、とにかく明らかに危険です。また、それを与える可能性のある入力はありません。
1
定義によってプライムだとは思いません。