タグ付けされた質問 「number-theory」

数論は、主に正の整数である数の性質と関係を含みます。

11
サイクロトミック多項式
背景(定義にスキップ) オイラーは、複素数に関する美しい定理を証明しました:e ix = cos(x)+ i sin(x)。 これにより、de Moivreの定理が証明しやすくなります。 (e ix)n = e i(nx) (cos(x)+ i sin(x))n = cos(nx)+ i sin(nx) 2次元ユークリッド平面を使用して複素数をプロットできます。水平軸は実数部を表し、垂直軸は虚数部を表します。このように、(3,4)は複素数3 + 4iに対応します。 極座標に精通している場合、極座標では(3,4)は(5、arctan(4/3))になります。最初の数値rは、原点からのポイントの距離です。2番目の数値θは、正のx軸からポイントまでの反時計回りの角度です。その結果、3 = rcosθおよび4 = rsinθです。したがって、我々は再び= R +cosθとsinθとRI = R(cosθとsinθと+ I)として3 + 4Iを書き込むことができるIθを。 複素方程式z n = 1を解きましょう。nは正の整数です。 z = reiθとします。次いで、Z N = R N E inθ。原点からのz nの距離はr …

30
消える要素
文字列Sとインデックスのリストを指定すると、その結果をの新しい値として使用しながら、の各インデックスの要素を削除してX変更SしSますS。 例えば、与えられたS = 'codegolf'とX = [1, 4, 4, 0, 2]、 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

5
最速のツイート可能な整数因数分解器
タスクは、合成数の重要な要素を見つけることです。 コードの長さが140バイトを超えないことを条件に、複合数の重要な要素をできるだけ早く見つけるコードを記述します。出力は、あなたが見つけた要素である必要があります。 コードは、たとえば関数の引数としてなど、便利な方法で入力を取得し、出力を提供できます。 すべての要因をリストするテストケース(出力する必要があるのは1つだけです) 187: 11 17 1679: 23 73 14369648346682547857: 1500450271 9576890767 34747575467581863011: 3628273133 9576890767 52634041113150420921061348357: 2860486313 5463458053 3367900313 82312263010898855308580978867: 264575131106459 311111111111113 205255454905325730631914319249: 2860486313 71755440315342536873 1233457775854251160763811229216063007: 1110111110111 1000000000063 1111111999999 1751952685614616185916001760791655006749: 36413321723440003717 48112959837082048697 テストに興味があるかもしれない次の難しいテストケースであなたの答えを採点しません: 513231721363284898797712130584280850383: 40206835204840513073 12764787846358441471 スコア スコアは、上記のすべてのテストケースを因数分解するための合計時間であり、因数分解に失敗するたびに10分のペナルティがあります(すべて最も近い秒に丸められます)。コードは他の整数でも機能するはずです。つまり、これらの答えをハードコーディングするだけではいけません。 10分後にコードを停止します。 2人が同じスコアを獲得した場合、最初の答えが勝ちます。 制限事項 コードでは、整数分解を実行する組み込み関数またはライブラリ関数を使用できません。入力は256ビット未満であると想定できます。すべての入力番号は合成されます。 どうやって時間を計るの? 私はtime ./myprog、Ubuntuシステムで文字通りタイミングを実行するので、定義した機能を含む完全なプログラムも実行してください。 コンパイルされた言語に関する注意 私のマシンでは、コンパイル時間は1分以内でなければなりません。 実際に可能ですか? スペースの制約を無視すると、純粋なPythonコード+ …

8
Copeland–Erdőの定数内の数値を見つける
バックグラウンド コープランド-エルデシュ定数は「0」を連結したものです 順番に素数の10を基数とした表現。その値は 0.23571113171923293137414... OEIS A033308も参照してください。 CopelandとErdősは、これが通常の数値であることを証明しました。これは、すべての自然数がコープランド・エルド定数の10進数展開のある時点で見つかることを意味します。 チャレンジ 正の整数を指定して、10を基数(先行ゼロなし)で表し、Copeland–Erdの定数の10進数のシーケンス内で最初に出現するインデックスを出力します。 合理的な入力および出力形式はすべて使用できますが、入力および出力は10を基数にする必要があります。特に、入力は文字列として読み取ることができます。そして、その場合、先行ゼロを含まないと見なすことができます。 出力は、定数の最初の10進数から始まる0ベースまたは1ベースです。 実際の結果は、データの種類、メモリ、または計算能力によって制限される場合があります。そのため、テストケースによってはプログラムが失敗する場合があります。だが: どんな入力に対しても理論的に機能するはずです(つまり、これらの制限を考慮しない)。 少なくとも最初の4つのケースで実際に機能し、それぞれのケースで結果が1分以内に生成されるはずです。 テストケース ここでは、出力は1から始まります。 13 --> 7 # Any prime is of course easy to find 997 --> 44 # ... and seems to always appear at a position less than itself 999 --> 1013 # Of course …

12
シャミールの秘密の共有
与えられたn(プレイヤーの数)、 t(しきい値)、およびs(秘密)、出力nによって生成された秘密シャミール秘密分散アルゴリズム。 アルゴリズム このチャレンジの目的のために、計算はGF(251)(sizeの有限体251、または整数mod 251として知られる)で行われます。通常、フィールドは、サイズがより大きい素数になるように選択されnます。課題を簡素化するために、フィールドサイズは一定になります。251これは、8ビットの符号なし整数で表現できる最大の素数であるため選択されました。 t-1(包括的)範囲でランダムな整数を生成します[0, 250]。これらのラベル1を通過T-1 。 構築t-1用い番目の多項式をsのパワーの係数として工程1からの一定値とランダムな整数としてx:F(X)= S + X * 1 + X 2 * 2 + ... + X T- 1 * a t-1。 (包括的)範囲内の(f(z) mod 251)それぞれの出力。z[1, n] 参照実装 #!/usr/bin/env python from __future__ import print_function import random import sys # Shamir's Secret Sharing algorithm # Input …
17 code-golf  number-theory  random  cryptography  polynomials  code-golf  number  code-golf  math  number  sequence  code-golf  quine  code-generation  code-golf  arithmetic  set-theory  code-golf  sequence  code-golf  code-golf  string  math  fastest-code  optimization  code-golf  code-golf  internet  stack-exchange-api  code-golf  array-manipulation  code-golf  string  internet  string  code-challenge  internet  test-battery  code-golf  math  pi  code-golf  arithmetic  primes  code-golf  array-manipulation  code-golf  string  code-golf  string  palindrome  code-golf  sequence  number-theory  fastest-algorithm  code-golf  math  number  base-conversion  code-golf  number-theory  sorting  subsequence  search  code-golf  permutations  code-challenge  popularity-contest  code-generation 

20
奇数の逆走
インスピレーション。 仕事 2から2 15の非負整数の指定されたリスト内の奇数の逆実行。 例 0 1 → 0 1 1 3 → 3 1 1 2 3 → 1 2 3 1 3 2 → 3 1 2 10 7 9 6 8 9 → 10 9 7 6 8 9 23 12 32 23 25 27 → 23 …

3
文字列内のパターンを検索
この挑戦では、あなたの仕事は、与えられた構造を持つ部分文字列を見つけることです。 入力 入力は、空ではない2つの英数字文字列、パターン p、およびテキスト tです。の考え方は、の各文字がp連続して空でない部分文字列を表し、その部分文字列tが隣り合って出現し、pそれらの連結を表すことです。同一の文字は同一の部分文字列に対応します。たとえば、パターンaaは空でない正方形(短い文字列をそれ自体に連結することによって取得される文字列)を表します。したがって、パターンaaは部分文字列byebyeとa一致し、それぞれ一致しbyeます。 出力 テキストtにp一致する部分文字列が含まれている場合、出力はその部分文字列になり、の文字に:対応する文字列の間にコロンが挿入されますp。例えば、我々が持っている場合t = byebyenowとp = aa、その後、bye:bye許容出力されます。一致する部分文字列にはいくつかの選択肢がありますが、そのうちの1つだけを出力します。 t一致する部分文字列が含まれていない場合、出力は悲しい顔になり:(ます。 規則と説明 の異なる文字はp同一の部分文字列に対応できるためp = aba、文字列と一致できますAAA。文字は空でない文字列に対応する必要があることに注意してください。特に、pがより長い場合t、出力はでなければなりません:(。 完全なプログラムまたは関数を記述できます。また、2つの入力の順序を変更することもできます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 形式で与えられますpattern text -> output。他の受け入れ可能な出力が存在する可能性があることに注意してください。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

10
昇順行列
「昇順行列」は、任意の要素がそれぞれの行と列で以前に使用されていない最小の利用可能な要素である整数の無限行列(0を含む)です。 | 1 2 3 4 5 6 ... --+---------------- 1 | 0 1 2 3 4 5 ... 2 | 1 0 3 2 5 4 ... 3 | 2 3 0 1 6 7 ... 4 | 3 2 1 0 7 6 ... 5 | 4 5 …
17 code-golf  math  matrix  programming-puzzle  code-golf  music  code-challenge  programming-puzzle  code-golf  fastest-code  code-golf  number  game  code-golf  combinatorics  code-golf  math  sequence  restricted-complexity  code-golf  number  random  code-golf  array-manipulation  code-golf  math  matrix  code-golf  number  sequence  counting  code-golf  math  number  sequence  popularity-contest  number  sequence  code-golf  music  code-golf  number  code-golf  ascii-art  arithmetic  code-golf  code-golf  number  code-golf  code-challenge  array-manipulation  code-golf  grammars  code-challenge  polyglot  code-golf  game  math  python  programming-puzzle  code-challenge  king-of-the-hill  code-challenge  fastest-code  primes  number-theory  number-theory  primes  fastest-code  factoring  popularity-contest  compile-time  code-golf  math 

8
平方数の密度
数の平方数桁密度(SNDD)-自分で発明-は、連続した数字で見つかった平方数の数と数の長さの比です。たとえば、169は4つの正方形の数字(1、9、16、169)を含む3桁の数字であるため、4/3または1.33の正方形の数字の密度になります。4桁の数字1444には6つの正方形(1、4、4、4、144、1444)があるため、比率は6/4、つまり1.5です。前の例では、正方形の繰り返しが許可されていることに注意してください。また、441は番号1444内で連続して検出できないため、許可されません。 あなたの仕事は、与えられた範囲A-B(包括的)を検索して、最高の二乗数字桁密度を持つ数字を探すプログラムを書くことです。プログラムは、次の仕様に従う必要があります。 入力A、Bを1〜1,000,000,000(10億)の範囲で受け取ります。例:sndd 50 1000 結果として、最大のSNDDを持つ数値を返します。同点の場合、最小の数値を返します。 0は、0、00、000など、どのような形式の正方形としてもカウントされません。049や0049など、0で始まる正方形もカウントされません。 数値全体が正方である必要はないことに注意してください。 例: sndd 14000 15000 Output: 14441 sndd 300 500 Output: 441 ボーナス:1から1,000,000,000の間で最大のSNDDを持つ数字は何ですか?これが可能な限り大きいのか、それともより大きな範囲がより高い範囲にあるのかを証明できますか? 現在のスコア: ルビー:142 Windows PowerShell:153 Scala:222 Python:245 答えが選択されたので、ここにJavaScriptでの(変更されていない)リファレンス実装を示します:http ://jsfiddle.net/ywc25/2/

23
リストがABCトリプルかどうかを調べる
3つの正の整数A、B、Cは、互いに素であり、A <Bであり、次の関係を満たす場合、ABCトリプルです:A + B = C 例: 1, 8, 9 互いに素であるため、ABCトリプルです。1<8および1 + 8 = 9 6, 8, 14 それらは互いに素ではないからではありません 7, 5, 12 7> 5のためではありません ABCトリプルの詳細については、このFrits Beukers 2005のプレゼンテーションをご覧ください。 入出力 10進表記の3つの整数。値またはリストを区切ることができます。3つの整数がABCトリプルであるかどうかにかかわらず、出力は真偽値でなければなりませんでした。 注:リスト内の整数の順序を尊重することが重要です。たとえば、:1, 8, 9は同じリスト9, 1, 8または他の組み合わせとは見なされません。したがって、最初はABCトリプルであり、2番目はそうではありません。 したがって、Aはリストの最初の要素、Bは2番目、Cは3番目の要素です。 テストケース 次の各リストは、真の値を出力する必要があります [1, 8, 9] [2, 3, 5] [2, 6436341, 6436343] [4, 121, 125] [121, …

16
パーティションはいくつありますか?
正の整数のパーティション番号は、正の整数の合計として表現できるウェイの数として定義されます。言い換えれば、それが持っている整数パーティションの数。たとえば、番号4には次の部分があります。 [[1、1、1、1]、[1、1、2]、[1、3]、[2、2]、[4]] したがって、5パーティションがあります。これはOEIS A000041です。 仕事 与えられた正の整数Nは、そのパーティション番号を決定します。 すべての標準ルールが適用されます。 入力および出力は、合理的な手段で処理できます。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース 入力| 出力 1 | 1 2 | 2 3 | 3 4 | 5 5 | 7 6 | 11 7 | 15 8 | 22 9 | 30 10 | 42

3
ミラー・ラビンの強い擬プライム
非負の整数Nを指定すると、すべての最初のN素数の基底に対する強い擬似素数である最小の奇数の正の整数を出力します。 これは、OEISシーケンスA014233です。 テストケース(1インデックス付き) 1 2047 2 1373653 3 25326001 4 3215031751 5 2152302898747 6 3474749660383 7 341550071728321 8 341550071728321 9 3825123056546413051 10 3825123056546413051 11 3825123056546413051 12 318665857834031151167461 13 3317044064679887385961981 のテストケースはN > 13、これらの値がまだ見つかっていないため利用できません。シーケンス内の次の用語を見つけることができた場合は、必ずOEISに提出してください! ルール Nインデックスがゼロまたはインデックスが1の値を選択できます。 ソリューションが言語の整数範囲内で表現可能な値(つまりN = 12、符号なし64ビット整数まで)でのみ動作することは許容されますが、ソリューションは、言語が任意の長さの整数をサポートするという前提で、理論的には入力に対して動作する必要があります。 バックグラウンド 正の整数は、奇数のx形式x = d*2^sで記述できますd。dそして、商が2で割り切れなくなるまで2でs繰り返し除算nすることで計算できます。これdはその最終商でありs、2が除算される回数ですn。 正の整数nが素数の場合、フェルマーの小定理は次のように述べます。 任意の有限体 Z/pZ(どこにp素数がある)でも、の平方根1は1and -1(または同等に1and p-1)のみです。 これら3つの事実を使用して、次の2つのステートメントのいずれかが素数に対して真でなければならないことを証明できますn(d*2^s = n-1およびrはの整数です[0, s))。 …

13
トリタゴラストリプル
A ピタゴラストリプル式に正の整数解です。 トリタゴラストリプルは、方程式の正の整数解です。 Δnはn番目の三角形の数を見つけます。トリタゴラスのトリプルはすべて、方程式の解でもあります。 仕事 正の整数を指定すると、正および負の三角形の数の合計が第3の三角形の数になるようにc、正の整数のすべてのペアを出力します。最も便利な方法でペアを出力できます。各ペアを一度だけ出力する必要があります。a,babc これはコードゴルフです テストケース 2: [] 3: [(2, 2)] 21: [(17, 12), (20, 6)] 23: [(18, 14), (20, 11), (21, 9)] 78: [(56, 54), (62, 47), (69, 36), (75, 21), (77, 12)] 153: [(111, 105), (122, 92), (132, 77), (141, 59), (143, 54), (147, 42), (152, …

15
最初のx個のプライムの中の加算プライム
加法素数の定義: ちょうど2つの除数が呼び出されている番号プライム番号。 素数でその桁数も素数である数は、加法素数と呼ばれます 仕事: 整数を与えx、最初の中のすべての添加の素数を計算するxと、素数2最初の素数と添加素数の両方とみなされています。数値は基数10で表されます。 ルール: 出力は、最初のx素数の中のすべての加法素数で構成されます 0 < x < 151、この課題のために、機能的な目的のために 加法素数はすべて整数であるため、小数は許可されず(例:2ではなく、出力2.0する必要があります)、小数として表示してはなりません。 例: 10 -> 2 3 5 7 11 23 29 説明: 最初の10個の素数は2 3 5 7 11 13 17 19 23 29であり2 3 5 7 11 23 29、それぞれの桁数の素数のみを持ち、それぞれ2,3,5,7,2,5,11であるため、加法素数です。 の説明に従ってexample 1、他のテストケースは次のようになります。 2 -> 2 3 25 -> 2 3 …

7
ワン1、ツー1、ワン2ワン1
チャレンジ: 正の非ゼロ整数の入力を受け取り、以下に説明する順序で次の4つの数値を出力するプログラムを作成します。 注:入力が実際にゼロ以外の正の整数であるかどうかを確認する必要はありません シーケンス: このシーケンスのすべての数値(入力である最初の数値を除く)は、n桁で構成されます(nは偶数)。番号をn / 2ペアに分割する場合、ペアごとに、最初の数字は前の数字に2番目の数字が現れた回数でなければなりません 視覚的な説明: この例「シーケンススターター」または入力を検討してください。 入力には1 "6"、1 "5"および2 "7"があるため、6577 シーケンスの次の番号は次のように161527なります。 入力の桁数が多すぎる場合(1桁で9桁以上)、正しい出力を取得することはできません。 例:111111111111(12 1's) 次の番号は、12 1を記述する必要があります。したがって、それを9個の1と3個の1に分割します(合計9 + 3 = 12) 次の数:9131 入力を4回繰り返して出力する必要があります(4つの整数のリスト/配列を返すか、スペースで区切って出力します。改行も使用できます)。 「数字はいろいろな方法で書くことができますが、どうやって書くのですか?」: 考えてみると、入力例6577は271516(2つの7、1つの5、1つの6)と書くこともできます。ただし、これは無効な出力です。数値を左から右に繰り返す必要があります。したがって、161527。7の7657量、6の量、5の量を反復する場合、有効な出力は次のようになります。271615 I / Oの例: 入力:75 出力:1715 211715 12311715 4112131715 入力:1 出力:11 21 1211 3112 入力:111111111111(12 1's) 出力:9131 192113 31191213 23411912 :シーケンスが異なっているので、これは、質問「あなたが見る何を言う」とは違ってhttps://oeis.org/A005150: -このようなこの1つのリターン番号< 入力:1211出力:111221 シーケンスは、私が求めているもののどうなる …

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