タグ付けされた質問 「primes」

素数の特定と操作に関する課題

28
大きさの数字
入力として正の整数を指定すると、それが寛大な数であるかどうかが決まります。 寛容な数とは、+基数10の任意の2桁の間に符号を挿入すると、素数の整数を表すような数です。 たとえば、40427は寛大です 4+0427 = 431 is prime 40+427 = 467 is prime 404+27 = 431 is prime 4042+7 = 4049 is prime 出力 入力が寛大な場合とそうでない場合の2つの異なる値を出力する必要があります。 得点 このコンテストの目的は、このタスクを解決するために記述されたソースコードのサイズを、バイト単位でできるだけ小さくすることです。 テストケース 1 -> True 2 -> True 4 -> True 10 -> False 98 -> True 101 -> True 109 -> False 819 …

9
素数の孤独
最近、私は小説「素数の孤独」を読みました。そこでは、主人公は双子の素数と幾分比較されます(「常に一緒ですが、触れない」)。 双子素数は、例えば-for別の素数、双子素数対(41、43)よりも2少ない又は2以上のいずれかである素数です。言い換えれば、双子素数は2の素数ギャップを持つ素数です。ツインプライムという用語は、ツインプライムのペアに使用されることがあります。これの別名は、プライムツインまたはプライムペアです。ウィキペディア 気のめいるような小説はあまり好きではありませんでしたが、最近PPCGに陥ったので、それが私の頭の中に疑問を投げかけました... 仕事: N> 4の正の整数を考えると、双子の素数の最も近いカップルの間の孤独な素数(別名孤立素数)を見つけます。 この場合、孤独な素数という用語では、双子の素数ではなく、双子の素数のペアの間にあるすべての素数を意味することに注意してください。N> 4の理由は、最初の2組の素数が(3、5)と(5、7)であるためです。 例: N = 90。 双子素数の最初の2つのペア<Nおよび> Nを見つけます。それらは(71、73)および(101、103)です。 73から101の範囲で孤独な素数を見つけます。 79、83、89、97です。 特殊なケース: Nが2つの双子素数の間にある場合は、最も近い双子素数のペア> N + 1および<N-1を見つけます。例:N = 72は、彼らではないので、リスト71と73から除外する双子素数> 73と<71の最も近いカップルを見つける孤独な素数。そうN = 72期待される結果のためのものである:67、71、73、79、83、89、97 Nがツインプライムのカップルに属している場合、たとえばN = 73の場合、ツインプライムの最も近いカップルは(71、73)と(101、103)です。N = 71の場合、双子素数の最も近いカップルは(59、61)と(71、73)です。 テストケース: N = 70 > Lonely primes are: 67 N = 71 > Lonely primes are: 67 N = …
24 code-golf  math  primes 

20
素数の和ピラミッド
数Nが与えられると、N個の素数のピラミッドの合計を取得することが課題になります。物事を明確にするために、以下に例を示します。 Input: 4 最初の4素数をリストし、それらの合計を計算します。その後、合計の合計を計算します。 2 > 5 3 > 13 > 8 > 33 5 > 20 > 12 7 最終結果は33であることがわかります。N = 8の別の例を次に示します。 2 > 5 3 > 13 > 8 > 33 5 > 20 > 83 > 12 > 50 > 205 7 > 30 > 122 > …
24 code-golf  math  primes 

13
プライムタイムトラベル
誰にも言わないでください、しかし、私は叔父のタイムトラベルマシンにニックを入れました!私の叔父は素数に取りつかれていますが、それは機械に表示されます。彼はそれをプログラムして、合計が素数になる日付までしか行かないようにしています。 1947-08-151947 + 8 + 15 = 1970であるため、移動できません。これは素数ではありません。1947 + 7 + 25 = 1979であるため、に進むことができ1947-07-25ます。これは素数です。ですから、インドの独立記念日を見に戻りたいのなら、数週間前に行って20日間待つ必要があるようです。 私が行きたい他の日付がいくつかありますが、同様に、目標日付の前の日付(または幸運なら、等しい)に移動する必要があります。しかし、私はイライラしているので、あまり待ちたくありません。そのため、使用できる日付のうち、目的の日付に最も近い日付を見つけたいと思います。 目標日を取得し、タイムマシンに入力する日付を与えるプログラムを作成できますか?部分が素数になる合計日付の前または最も近い日付ですか? (このチャレンジでは、 予後グレゴリオ暦を使用しています。これは、人々が古いユリウス暦を使用していた期間でも現在のグレゴリオ暦を使用することを意味します。) 入力 デート 理想的には、現在の時代(AD)の任意の日付。実際には、あなたの言語が自然に処理できるそのサブセット あなたが好きな単一の人間が読める形式で 出力 入力日付に最も近い日付。入力日付以下で、日付+月+年の合計が素数になります。 あなたが好きな単一の人間が読める形式で ⁺:日、月、年などの「人間が読める」すべてのスペルが、どのような順序でも テストケース 1947-08-15 => 1947-07-25 1957-10-04 => 1957-09-27 1776-07-04 => 1776-07-04 999-12-12 => 0999-12-10 2018-06-20 => 2018-06-15 1999-01-02 => 1998-12-29 1319-12-29 => 1319-07-01 (質問の手助けをしてくれた@ Shaggy、@ …
23 code-golf  primes  date 

19
プライムツインはありますか?
整数は、正であり、正確に2つの異なる除数(1とそれ自体)がある場合にのみ素数です。ツインプライムペアは、2つの要素で構成されます:pおよびp±2両方とも素数です。 入力として正の整数が与えられます。あなたの仕事は、与えられた整数が双子のペアに属するかどうかに応じて、標準の決定問題のルールに従って、真偽/偽を返すことです(値は一貫している必要があります)。 テストケース Truthy(ツインプライムズ): 3, 5, 7, 11, 13, 17, 19, 29, 31, 41, 43 偽(ツインプライムではない): 2, 15, 20, 23, 37, 47, 97, 120, 566 これはcode-golfなので、バイト単位の最短コードが勝ちです!

10
自然ログのアリ
これは良い初心者の挑戦であり、良い時間のキラーです。 タイトルが短すぎたため、自然対数だけを言いました。これは対数とは関係ありません。 与えられた2つの変数: アリの数n。 ログの幅w。 幅のログwをnアリで出力します(例はw=3、n=6) | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | …

14
コードを再利用してください!
この課題では、2つの重要な問題を一度に解決しようとします。彼らです: 整数aおよびbを指定すると、a b -1が素数であるかどうかがわかります。 整数aおよびbを指定すると、nCr(a、b)を返します。 具体的には、2つのプログラムを作成する必要があります。1つは最初のタスクを実行し、もう1つは他のタスクを実行します。両方の問題を一度に解決したいので、両方のプログラムで同じコードを使用することをお勧めします。 得点 回答のスコアは、2つのプログラム間のレーベンシュタイン距離です。スコアが低いほど優れています。同点の場合、2つのプログラムの最短の組み合わせコードでの答えが勝ちです。このスクリプトを使用して、ソリューションのスコアを計算できます。 ルール 上記のタスクを解決する2つのプログラムを同じ言語で作成する必要があります。任意のI / Oメソッドを使用できます。タスク1では、真偽値を返すか、2つの値を選択してtrueとfalseを意味し、それに応じて返すことができます。例えば。あなたはそれが"prime"真を"not prime"意味し、偽を意味することを選ぶことができます。 使用するアルゴリズムは、可能なすべての入力に対して機能する必要がありますが、使用される数値タイプの制限のために大きな数値に対してコードが失敗しても問題ありません。入力が有効であると想定できます。 プログラムのどのサブセットも問題を解決してはなりません。文字が削除された場合、コードは機能しません。たとえば、次のコードは無効です。プログラムを中断せずに未使用のelse-blockを削除できるためです。 if (1) { /* change to 0 to get the second program*/ ... } else { ... } 標準の抜け穴は許可されていません。 テストケース a b -1は素数ですか? a b 1 1 false 2 3 true 5 2 false 2 …

1
それはすべての要因です!
このチャレンジは、この素晴らしいアニメーション図に触発されています(チャットで投稿してくれたflawrに感謝します)。 input nを指定すると、指定されたように、すべての素因数をドットのネストされた多角形として描画します。 たとえば、番号を指定する357 = 17x7x3と、三角形に3つのドット、七角形にそれらの三角形の7つのバージョン、17角形にそれらの七角形の17のバージョンを配置します。要するに、外側の最大の素因数から内側の最小の素因数に向かうネストされたポリゴン。の場合357、あなたの答えは次のようになります(色の有無にかかわらず): すべての素数のすべてのポリゴンを>= 3ダイアグラムの周りで回転させないでください。 唯一の例外は2、特に奇数のべき乗の素数です2。376 = 47x2x2x2以下の例でわかるように、8sは回転し、sの単一行ではなく、正方形内のsの2垂直スタックです4。2正方形に配置されたの累乗でさえ、この方法で回転させる必要はありません。 実際に448 = 7x2x2x2x2x2x2は、64sの七角形のように見えるダイアグラムがあり64、正方形の正方形の正方形に配置されていますが、回転はありません。 さらに二つの例がある440 = 11x5x2x2x2と432 = 3x3x3x2x2x2x2。私たちは、ことがわかり4402の奇数力で、回転した8ものの、秒432の偶数乗と2その回転しない16のを。 そして最後に、10 = 5x2Pythonとそのturtleモジュールでモックアップした色のない最小限の例を示します。 チャレンジ 入力を指定nすると1 <= n <= 10000、ネストされた因子ポリゴンの画像を出力します。 ルールは次のとおりです。 画像は、外側に(最大の素因数)辺を持つ多角形から、内側にある最小素数要素まで、ネストされたドットの多角形で構成されています。 係数2の場合、2の累乗は線、次に正方形、次に正方形の線などとして積み重ねられます。2のべき乗でも回転させないでください。2の奇数乗は、それぞれのポリゴンを中心に回転し、回転する前に垂直に積み重ねる必要があります。 好きなように画像の向きを変えることができます(私は好みですが)が、入れ子になったすべてのポリゴンは、2の奇数乗を除いて他のポリゴンと同じ方向を向いている必要があります。 画像サイズとドットサイズには2つのオプションがあります。 画像サイズは静的で、ドットサイズnはアニメーションのように増加するにつれて減少します。 ドットサイズは静的で、画像サイズはn増加するにつれて大きくなります。 ポリゴンの最初の3つのレイヤーは、隣接するポリゴンと区別可能(つまり、接触していない)である必要がありますが、の周囲の画像のサイズを考慮するとn=10000、レイヤーが接触し始めても問題ありません。彼らがそうしなかったなら、私はそれを好むでしょうが、Stack Exchangeにアップロード可能な画像に収まることは避けられないかもしれません。 色はオプションです。 ドットの形はあなた次第です。正方形が言語に適している場合は、それらを使用します。 ボーナスはありませんが、元の投稿のように誰かが図をアニメーション化して色付けするのを見てみたいです。 この質問の執筆に協力してくれたConor O'Brien、EasterlyIrk、Martin Ender、Kritixi Lithos、Mego、DJ McMayhem、El'endia Starmanに感謝します。 このコードはゴルフなので、最短のコードが勝ちます。幸運と良いゴルフ!

5
最速のホームプライムジェネレーター
ホームプライムとは何ですか? 例として、HP(4)を取り上げます。まず、素因数を見つけます。4の素因数(最小から最大の順、常に)は2、2です。これらの要素をリテラル数として取ります。2、2は22になります。素因数分解のこのプロセスは、素数に達するまで続きます。 number prime factors 4 2, 2 22 2, 11 211 211 is prime 素数に達すると、シーケンスは終了します。HP(4)= 211。14の長い例を次に示します。 number prime factors 14 2, 7 27 3, 3, 3 333 3, 3, 37 3337 47, 71 4771 13, 367 13367 13367 is prime あなたの課題は、与えられたxでHP(x)を計算するプログラムを作成し、できるだけ早くそれを行うことです。既知のホームプライムのリスト以外の任意のリソースを使用できます。 注意してください、これらの数値は非常に速く非常に大きくなります。x = 8では、HP(x)は3331113965338635107にジャンプします。HP(49)はまだ見つかりません。 プログラム速度はRaspberry Pi 2でテストされ、次の入力を平均します。 16 20 …

20
最大プライムパワーを見つける
素数の累乗は、n = p kの形式で記述できる正の整数nです。ここで、pは素数、kは正の整数です。たとえば、いくつかの主要な力はです。[2, 3, 5, 4, 9, 25, 8, 27, 125] 次に、2の主なべき乗を考えます。これらは[2, 4, 8, 16, ...]2 kの形式で記述できます。20未満の素数の累乗を考慮する場合、それらはすべて含まれます。ただし、16はその範囲内の2の基本素数を持つ最大素数の累乗です。プライムパワーp kは、その範囲内のpの最大パワーである場合、その範囲内で最大になります。各範囲の最大素数にのみ関心があるため、それより低いすべての素数を除外する必要があります。 あなたの目標は、正の整数nを取り、その範囲の最大素数を出力する関数またはプログラムを書くことです[2, 3, 4, ..., n]。 最大プライムパワーなどの定義を明確にしてくれた@ Peter Taylorに感謝します。 ルール これはコードゴルフですので、コードをできるだけ短くしてください。 最大の素数の力は、任意の順序で出力することもできるが、何の重複があってはなりません。 テストケース n result 1 [] 2 [2] 3 [2, 3] 4 [3, 4] 5 [3, 4, 5] 6 [3, 4, …
23 code-golf  math  primes 

15
私の後に繰り返して!
引数として文字列を指定すると、重複しない最長の重複部分文字列の長さ、またはそのような文字列がない場合はゼロを出力します。 入力文字列が空ではないと仮定できます。 例 abcdefabc:部分文字列abcは位置1と7で繰り返されるため、プログラムは3を出力する必要があります abcabcabcabcab:abcabcまたはbcabcaまたはcabcab繰り返されるため、プログラムは6を出力します。(サブストリングabcabcabcabも繰り返されますが、オカレンスは重複するため、受け入れません)。 aaaaaaa:aaaたとえば、位置1と4で繰り返されるため、プログラムは3を出力します。 abcda:aが繰り返されるため、プログラムは1を出力します。 xyz:繰り返し文字列なし→ 0 ababcabcabcabcab:6を返す必要があります これはcode-golfなので、バイト数が最も少なくなります。
23 code-golf  string  code-golf  code-golf  kolmogorov-complexity  primes  code-golf  kolmogorov-complexity  hexadecimal  code-golf  code-golf  string  code-golf  string  random  code-golf  array-manipulation  code-golf  ascii-art  kolmogorov-complexity  random  code-golf  array-manipulation  code-golf  stateful  code-golf  hello-world  code-golf  string  code-golf  interpreter  lisp  code-golf  restricted-source  quine  palindrome  code-golf  ascii-art  random  generation  challenge-writing  ascii-art  random  polyglot  maze  answer-chaining  string  cops-and-robbers  whitespace  code-golf  string  cops-and-robbers  whitespace  code-golf  number  sequence  code-golf  date  code-golf  ascii-art  decision-problem  code-golf  combinatorics  chemistry  code-golf  kolmogorov-complexity  source-layout  radiation-hardening  code-golf  ascii-art  path-finding  maze  code-golf  string  ascii-art  game  animation  code-golf  string  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  restricted-source  new-years 

26
素数ビット数の素数
仕事 最大と与えられたゼロ以外の正の整数を含むすべての非負整数を探すnは、プライムされているとのカウント1'sと0's(何の先行ゼロを持たない)彼らのバイナリ表現ではあまりにプライムあります。 以下に、このような素数の最初の5つを示します。 17, 19, 37, 41, 79 10001, 10011, 100101, 101001, 1001111 明確化と規則 デフォルトのI / Oメソッドが受け入れられます。 答えはプログラムまたは関数です。 そのような素数がない場合は、ごみを出力するか、何も出力しません。 標準的な抜け穴は禁止されています。 2 3 5 7は、バイナリ表現では0'sおよびの出現回数が1's素数ではないため、リストに追加しませんでした。7バイナリ表現が111であると考えてください。ここで0はゼロ回発生し、ゼロは素数ではありません。 組み込みが許可されています。 バイト単位の最短コードが勝ちです! テストケース 10 [] 100 [17、19、37、41、79] 150 [17、19、37、41、79、103、107、109、131、137] コードスニペットを表示 /* Configuration */ var QUESTION_ID = 107050; // Obtain this from the url // It will …

16
素因数分解による数の約数の並べ替え
2以上の整数の入力が与えられると、その素因数分解の指数で昇順でソートされた除数のリストを出力します。 例として、2 3 3 2の整数72を使用します。除数があります 1 3^0 · 2^0 2 3^0 · 2^1 3 3^1 · 2^0 4 3^0 · 2^2 6 3^1 · 2^1 8 3^0 · 2^3 9 3^2 · 2^0 12 3^1 · 2^2 18 3^2 · 2^1 24 3^1 · 2^3 36 3^2 · 2^2 72 …


25
メビウス関数
メビウス関数 メビウス関数は重要な数論関数です。 提出は正の整数nを受け入れ、で評価されたメビウス関数の値を返す必要がありますn。 定義 メビウス関数μ(n)は次のように定義されます。 | 1 if n is squarefree and has an even number of distinct prime factors μ(n) = | -1 if n is squarefree and has an odd number of distinct prime factors | 0 otherwise nnの素因数分解の指数がすべて厳密に2よりも小さい場合、平方自由と呼ばれます。(または、2つの除算の累乗に対する素数はありませんn)。 テストケース ここで、μの最初の50個の値を確認できます。 ウィキペディアのパブリックドメイン画像 メビウス関数は、OEISのシーケンス番号A008683です。 これらは最初の77の値です: 1, -1, -1, 0, …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.