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

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

3
素数の階乗の比として有理数を書く
注:このチャレンジはサンドボックスに投稿されています。 前書き この課題は、学部の数学コンテストの問題である2009 Putnam B1に触発されました。問題は次のとおりです。 すべての正の有理数は、素数の階乗の積として書けることを示します(必ずしも別個ではない)。例えば、 チャレンジ あなたの挑戦は、入力として正の有理数の分子と分母(または単に有理数自体)を表す、比較的素数の正の整数のペアを取り、素数の2つのリスト(または配列など)を出力することです入力された有理数は、最初のリストの素数の階乗の積と2番目のリストの素数の階乗の積の比に等しくなります。 ノート 最初のリストと2番目のリストの両方に含まれる素数がない場合があります。ただし、素数は、どちらのリストでも何度でも表示できます。 入力はそれぞれ(厳密には)1〜65535の間であると想定できます。ただし、出力する必要がある数値の階乗がこの範囲にあるとは限りません。 入力と出力の例 有効な入力と出力の例を次に示します。 input=>output 10,9 => [2,5],[3,3,3] 2,1 => [2],[] 3,1 => [3],[2] 1,5 => [2,3,2],[5] (elements of a list may be in any order) 3,2 => [3],[2,2] 6,1 => [3],[] 入力(2,2)、(0,3)、(3,0)、(3,6)および(1,65536)は不正な入力です(つまり、プログラムは特定の方法で動作する必要はありません) )。不正な出力の例を次に示します。 1,2 => [2],[2,2] (2 is in both …

4
フェルマーの因数分解ヘルパー
半素数を因数分解したい。この課題の目標は、u v NをFermatの方法で簡単に因数分解できるように2つの小さな整数uとvを見つけ、Nの因子を簡単に差し引くことです。NNNuuuvvvu v NuvNuvNNNN タスク 半 素数と正の整数kが与えられた場合、xとyを次のように定義します。NNNkkkバツバツxyyy Y=X2-KNX = ⌈ K N−−−√⌉バツ=⌈kN⌉x=\lceil\sqrt{kN}\rceil y= x2− k Ny=バツ2−kNy=x^2-kN ステップ#1- kを見つけるkkk まず、yが平方数(別名完全平方)になるように、最小値を見つける必要があります。kkkyyy これにより、フェルマーの因数分解法の 1回の反復でを因数分解できます。より具体的には、これはすぐにつながります:k NkNkN k N= (x + y√)× (x − y√)kN=(バツ+y)×(バツ−y)kN=(x+\sqrt{y})\times(x-\sqrt{y}) (更新:このシーケンスは現在A316780として公開されています) ステップ#2- kの因数分解kkk 次に、次のような2つの正の整数およびvを見つける必要があります。あなたはあなたはuvvv c u = x + √u v = kあなたはv=kuv=k dはV=X- √c u = x + …

8
逆挿入ソート
目的 挿入ソートの動きから、元のスクランブルリストを生成しますするします。元のリストからすべての数字を持っているだろう0にN-1(包括的)N入力の大きさです。 入力 リストをソートするために必要な移動を含むリスト。各値は、元の(スクランブルされた)番号によって正しい位置に移動するスロットの量を表します。このプロセスは左から右であることに注意してください。入力リストの (0からインデックス付けされた)位置の値は、両端の値を含みます。 無効な入力を処理する必要はありません。この場合、どのような動作も許容されます(クラッシュ、無限ループなど)。i0i 出力 スクランブルリスト 動きを生成するためのステップバイステップ Scrambled List | Moves to sort [4,0,2,1,3,5] | [0, , , , , ] #4 stay in place [4,0,2,1,3,5] | [0,1, , , , ] #0 is moved 1 slot to the left [0,4,2,1,3,5] | [0,1,1, , , ] #2 is …
19 code-golf  array-manipulation  code-golf  code-golf  animation  code-golf  restricted-source  code-golf  java  code-golf  decision-problem  graph-theory  code-golf  conversion  electrical-engineering  code-golf  ascii-art  code-golf  string  substitution  code-golf  math  code-golf  string  set-theory  code-golf  code-golf  compile-time  code-golf  kolmogorov-complexity  binary  code-golf  sequence  cops-and-robbers  code-golf  subsequence  card-games  code-golf  sequence  primes  code-golf  code-golf  number  graphical-output  music  code-golf  ascii-art  code-golf  string  lambda-calculus  code-golf  string  code-generation  code-golf  unicode  code-golf  math  combinatorics  code-golf  balanced-string  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-challenge  fastest-code  chess  code-golf  math  graphical-output  code-golf  string  hello-world  animation  code-golf  number  arithmetic  code-golf  integer  code-golf  code-golf  combinatorics  code-golf  kolmogorov-complexity  graphical-output  code-golf  string  code-golf  code-golf  game  code-golf  math  combinatorics  code-golf  ascii-art  popularity-contest  random  code-golf  arithmetic  number-theory  integer  code-golf  tips  underload  code-golf  math  sequence  primes  code-golf  math  path-finding  code-golf  ascii-art  primes  code-golf  kolmogorov-complexity  alphabet 

5
ハードオブジェクトまたはソフトオブジェクトはもっとありますか
What-Ifブックのオープニングに触発されました。 入力は、文字列、文字列のリストなどとしてのスペースの長方形で、#内部にで作成されたオブジェクトがあります。 ######## # # ######## ### #### ### #### ### オブジェクトは常に交差せず、触れない長方形になります。ソフトオブジェクトは#、中央がで埋められておらず、境界のみであるオブジェクトとして定義されます。ハードオブジェクトは、塗りつぶされたオブジェクトです。幅または高さのあるオブジェクト<=2はハードと見なされます。すべてのオブジェクトはハードまたはソフトです。 入力にさらに硬いオブジェクトがある"Hard"場合、output 、より柔らかい場合、output "Soft"、それらが等しい場合、output "Equal"。 これはcode-golfなので、バイト単位の最短コードが勝ちです! テストケース これらのケースは完全な入力ではなく、各オブジェクトを特徴付けるべきものです。実際の入力は、質問の上部にあるascii-artのようになります。 ハード # #### ## ## ########## ########## ########## 柔らかい ### # # ### ################### # # # # # # ################### #### # # # # # # # # # …
19 code-golf  ascii-art  counting  code-golf  number  grid  decision-problem  chess  code-golf  grid  graph-theory  chess  code-golf  math  geometry  code-golf  arithmetic  roman-numerals  fastest-code  code-golf  math  geometry  code-golf  string  cryptography  code-golf  number  sequence  decision-problem  code-golf  string  parsing  c  code-golf  sorting  integer  code-golf  number  sequence  rational-numbers  graphical-output  atomic-code-golf  assembly  box-256  code-golf  geometry  tips  python  code-golf  number  sequence  arithmetic  number-theory  code-golf  ascii-art  kolmogorov-complexity  geometry  code-golf  graphical-output  code-golf  math  code-golf  grid  cellular-automata  game-of-life  code-golf  string  subsequence  code-golf  arithmetic  rational-numbers  code-golf  tips  dc  code-golf  ascii-art  kolmogorov-complexity  date  code-golf  string  primes  code-golf  string  natural-language  conversion  code-golf  sequence  code-golf  number-theory  primes  base-conversion  code-golf  math  primes  base-conversion  code-golf  ascii-art  fractal  code-golf  matrix  code-golf  math  tips  geometry  python  string  code-challenge  keyboard  code-golf  graphical-output  code-golf  string  code-golf  number  sequence  cops-and-robbers  number  sequence  cops-and-robbers 

11
二乗差を最大化する
整数値の順列を検討1するがN。たとえば、次の例N = 4: [1, 3, 4, 2] このリストは循環的である1と見なし、そのように、および2隣接として扱われます。そのようなリストについて計算できる1つの量は、隣接する値の差の2乗の合計です。 (1-3)² + (3-4)² + (4-2)² + (2-1)² = 10 あなたの仕事は、正の整数を与えられて、この量を最大にする順列を見つけることNです。N = 4上記の例の場合、最適ではありません(実際、最小限です)。18次の順列(および他のいくつかの順列)の合計平方差を達成できます。 [1, 4, 2, 3] アルゴリズムは(のN)多項式時間で実行する必要があります。特に、すべての順列の差の合計を単純に計算することはできません。 プログラムまたは関数を作成し、STDIN(または最も近い代替)、コマンドライン引数または関数引数を介して入力を取得し、STDOUT(または最も近い代替)、関数の戻り値または関数(out)パラメーターを介して結果を出力できます。 出力は、任意の便利で明確なフラットリストまたは文字列形式にすることができます。0toのN-1代わりに1toの値を持つリストを返すことを選択できますN。 標準のコードゴルフ規則が適用されます。 テストデータ この問題に対する優れた分析ソリューションがあります。たとえば、すべての有効なソリューションN = 10は次のリストと同等です(巡回シフトおよび反転まで)。 [7, 5, 6, 4, 8, 2, 10, 1, 9, 3] 私は(それがパターンを把握する、おそらく十分ですが)それを超えてあまりにも明らかにし、その代わりに任意のより多くの例を与える、あなたは結果が与えられたため、次の総乗違いがあることを確認することができますしたくありませんN。 N Total squared difference 1 0 2 …
19 code-golf  array-manipulation  permutations  restricted-complexity  code-golf  geometry  grid  code-golf  string  sorting  code-golf  simulation  code-golf  string  code-golf  arithmetic  code-golf  sorting  code-golf  string  code-golf  sorting  code-golf  interpreter  code-golf  number  kolmogorov-complexity  natural-language  conversion  code-golf  random  internet  code-golf  board-game  code-golf  number  sequence  code-golf  math  number  code-challenge  image-processing  classification  test-battery  code-golf  ascii-art  code-golf  tips  code-golf  arithmetic  code-golf  tips  code-golf  tips  javascript  code-golf  array-manipulation  code-golf  ascii-art  code-golf  string  binary  code-golf  arithmetic  linear-algebra  matrix  code-golf  sequence  code-golf  math  number  arithmetic  code-golf  primes  code-golf  math  code-golf  array-manipulation  counting  code-golf  arithmetic  code-golf  quine  code-generation  polyglot  code-golf  math  kolmogorov-complexity  trigonometry  code-golf  string  encryption 

3
素数のマッピング
最近、正の整数から有限のネストされたシーケンスへの全単射写像fを見つけました。この課題の目的は、選択した言語で実装することです。 マッピング 数考えるN因子とどこ。次に: 例えば: ルール このタスクを実行するための完全なプログラムまたは関数を作成できます。 出力は、シーケンスとして認識可能な任意の形式にすることができます。 素因数分解、素数テストなどの組み込みが許可されています。 標準の抜け穴は許可されていません。 プログラムは、私のマシンで10分以内に最後のテストケースを完了する必要があります。 これはコードゴルフなので、最短のコードが勝ちです! テストケース 10: {{},{{}},{}} 21: {{{}},{},{{}}} 42: {{{}},{},{{}},{}} 30030: {{{}},{{}},{{}},{{}},{{}},{}} 44100: {{{{}}},{{{}}},{{{}}},{},{}} 16777215: {{{{}}},{{}},{{}},{},{{}},{{}},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{{}}} 16777213:ペーストビン

12
最小素因数の合計
SF(n)は、指定された数値nに対して最小の素因数を計算する関数です。 T(N)を2 <= n <= NのすべてのSF(n)の合計と呼びます。 T(1)= 0(合計は0の被加数以上) T(2)= 2(2は最初の素数) T(3)= 5 = 2 + 3 T(4)= 7 = 2 + 3 + 2 T(5)= 12 = 2 + 3 + 2 + 5 ... T(10000)= 5786451 勝者は、自分のラップトップ(Toshiba Satellite L845、Intel Core i5、8GB RAM)で60秒で最大のT(N)を計算することに成功した人です。 Current top score: Nicolás Siplis - 3.6e13 …

13
シェルピンスキー層
はじめに、そのような下に線を追加することにより、パターンのようなシェルピンスキーの三角形/\を作成することができます... ゆるい枝/または\2つの枝に再び分割されます/\。 ブランチの衝突は、その\/下に何も(スペースはありません)死んでしまいます。 これらの規則を繰り返すと、 /\ /\/\ /\ /\ /\/\/\/\ /\ /\ /\/\ /\/\ etc... (ViHartによるインスピレーション) 正の整数Nを取り込んで、このパターンの最初のN行をstdoutに出力するプログラムまたは関数を作成します。必要以上に先行または後続のスペースはありません。 たとえば、入力が1出力の場合、 /\ 入力が2出力の場合 /\ /\/\ 入力が8出力の場合 /\ /\/\ /\ /\ /\/\/\/\ /\ /\ /\/\ /\/\ /\ /\ /\ /\ /\/\/\/\/\/\/\/\ 等々。 最小バイトのコードが優先されます。

28
プライムギャップの計算
素数を見つけることは、プログラミングの通過儀礼であり、非常に頻繁に誰かが作成する最初の深刻なプログラムです(通常は試用部門で)。 しかし、素数だけはすでに使い古されています。次に興味深いのは、素数のギャップを取得することです。連続する素数間のこれまでで最も長いギャップです。これらは非常にまれで「貴重な」ものです。最初のいくつかのペアとその違いは次のとおりです。 2 3 1 3 5 2 7 11 4 23 29 6 89 97 8 113 127 14 ... 父は、これらを10kまでの楽しみのために手作業で計算していました。コードがどれだけ短いかを見てみましょう。 ルール: 素数テスト、素数生成、または素数ギャップのための組み込み関数はありません http://oeis.org/A002386などを取得しません(遠くから詐欺師の匂いがすることができます:)) 事前計算された配列はありません 内部整数型が失敗するまで印刷を続ける 最小の文字数が優先されます。素数なしでギャップのみを印刷する場合は、+ 10文字。 興味深い場合は、組み込み関数を備えたバージョンを披露することもできます。クリエイティブに。 明確化:プライムを通過し、以前に見たギャップよりも大きいギャップを見るたびに報告します。たとえば、3と5の間には、2ユニット幅のギャップがあります。5と7の間のギャップも2ですが、それは古いニュースです。これ以上は気にしません。新しい最大のギャップが見つかった場合にのみ、報告します。これは、ギャップがますます広くなるにつれて、素数がどんどん少なくなっていることを反映しています。 編集:ほとんどの答えは素晴らしいですし、より多くの認識に値します。ただし、これまでのところ、48文字のGolfScriptエントリが最短です。
19 code-golf  primes 

5
数字削除後もまだ素数である最大素数を見つける
時が経つにつれて/math/33094/deleting-any-digit-yields-a-prime-is-there-a-name-for-this、次の質問を尋ねています。数字のいずれかを削除した後に素数のままである素数はいくつありますか?例えば719、あなたが得るような素数71で19あり、そして79。この質問は未解決ですが、コーディングの難題となると思いました。 仕事。 数字のいずれかを削除した後でも素数のままであることがわかる最大の素数を指定します。それを見つけるコードも提供する必要があります。 スコア。与える素数の値。 自由であれば、任意のプログラミング言語とライブラリを使用できます。 物事を始めるため99444901133に、リンクされたページで与えられる最大のものです。 制限時間。回答で与えられたよりも大きい最初の正解の1週間後に与えられた最大の正解を受け入れ99444901133ます。 これまでのスコア。 Python(primo) 4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111 J(randomra)(この回答は、2013年2月21日に1週間のタイマーを開始しました。) 222223333333

26
単語は互いに素ですか?
単語が与えられたら、すべての文字を英語のアルファベットの数字として扱い(a1にbなる、2にzなる、26 になる、など)、重複を含むすべてがペアワイズcoprimeであるかどうかを確認します。 入力は、小文字の英語文字の正確に1つの単語です。単語が互いに素である場合の出力は事実です:真/偽の値ですが、それらの2つのバリアントのみです。標準的な抜け穴は禁止されています。 テストケース: man: True day:True(ØrjanJohansenに感謝) led:False(l=12とd=4持っていますgcd=4) mana:(複数回発生しTrueますaが、1と1は互いに素です) mom:False(gcd(13,13)=13)) of:False(xnorに感謝しますが15∤6、gcd(15,6)=3) a:(True文字のペアがない場合は、単語を余素として扱います) これはcode-golfなので、バイト単位の最短コードが勝ちです!

13
パスカルプライムですか?
奇数の素数がパスカルの三角形に正確に2回現れることはよく知られています。ただし、パスカルの三角形に正確に2回現れるすべての数値が素数であるとは限りません。これらの数字をパスカル素数と呼びます。 パスカル素数は、パスカルの三角形に正確に2回現れる複合数です。最初のいくつかのパスカル素数は 4, 8, 9, 12, 14, 16, 18, ... あなたの挑戦は、nがパスカル素数であるかどうかに応じて、正の整数nを入力および出力としてtrueまたはfalseにすることです。これはコードゴルフなので、最短のプログラムが勝ちです!

19
欠落している素数を印刷する
タスク 数値入力を渡すと、の因子ではない1のx平方根の下の素数を表示または返すプログラムまたは関数を記述します。xx 例 ましょうf(x)と呼ばれる関数であります: >>> f(4) [] >>> f(5) [2] >>> f(20) [3] >>> f(60) [7] >>> f(100) [3, 7] >>> f(10000) [3, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] ボーナスルール あなたの言語が提供するビルトインを使用できます。 プログラムはx、言語で定義された上限と同じ高さの入力をサポートする必要があります。 1平方根の下の素数のみとして平方根を使用することは、実際にの因子に含まれxます。この制限を行わないと、大きな数字には多くの余分な数字が印刷されます。

13
Goldbachパーティション
ゴールドバッハ予想では、2より大きいすべての偶数は2つの素数の合計として表現できると述べています。例えば、 4 = 2 + 2 6 = 3 + 3 8 = 5 + 3 ただし、10に達すると、興味深いことが起こります。10と書けるだけでなく、 5 + 5 しかし、次のように書くこともできます 7 + 3 10は2つの素数の和として2 つの方法で表現できるため、10 の「ゴールドバックパーティション」はであると言います2。またはより一般的には、 数のゴールドバッハパーティションが書き込みの異なる方法の合計数であるn = p + q場合pとq素数であり、そしてp >= q あなたの課題は、番号のGoldbachパーティションを見つけるプログラムまたは関数を書くことです。現在、技術的には「Goldbachパーティション」という用語は偶数を指すためにのみ使用されています。ただし、p> 2が素数の場合、奇数の整数p + 2は2つの素数の和としても表現できるため、これをすべての正の整数(A061358)に拡張します。 入力は常に正の整数であり、関数の引数と戻り値、STDINとSTDOUT、ファイルの読み取りと書き込みなど、許可されているデフォルトのメソッドのいずれかで入力と出力を受け取ることができます。 100までの正の整数のGoldbachパーティションは次のとおりです。 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, …

19
メルテンス関数を計算する
正の整数nが与えられた場合、Mertens関数 M(n)の値を計算します。ここで、 そしてμ(kは)であるメビウス関数μ(kは)場合は1 = kが異なる素因数の偶数を有する場合、-1 kは異なる素因数の奇数であり、0素因数が明確でない場合。 これはコードゴルフなので、入力整数n > 0 に対してメルテンス関数を計算する関数またはプログラムの最短コードを作成します。 これは、OEISシーケンスA002321です。 テストケース n M(n) 1 1 2 0 3 -1 4 -1 5 -2 6 -1 7 -2 8 -2 9 -2 10 -1 117 -5 5525 5 7044 -25 8888 4 10000 -23

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