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

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

20
カーマイケル関数を計算する
タスクの説明 数論では、カーマイケル関数 λは正の整数かかり N戻る以上の正の整数kのようにk個の各整数の乗互いに素に、nは 1に等しいモジュロNを。 正の整数nが与えられた場合、解はλ(n)を計算する必要があります。バイト単位の最短コードが優先されます。 プログラムは理論的には任意の大きな入力に対して機能するはずですが、効率的である必要はありません。 ヒント すべてのλ(n)のシーケンスはOEIS A002322です。 未実装のPython実装は次のようになります from fractions import gcd def carmichael(n): coprimes = [x for x in range(1, n) if gcd(x, n) == 1] k = 1 while not all(pow(x, k, n) == 1 for x in coprimes): k += 1 return k (Pythonでは、pow(A, …

30
カタロニア語番号
の カタロニア番号(OEISは)多くの場合、組み合わせ論に登場する自然数の列です。 n番目のカタロニア語番号は、Dyckの単語の数です(括弧または括弧のようなバランスの取れた文字列 [[][]]です;形式的には、2文字aとbを使用して、先頭から始まる部分文字列の数がnumber以上の文字列として定義されます長さ2nで、文字列全体が同じ数のaおよびb文字を持ちます。n番目のカタロニア語番号(n> = 0の場合)も、次のように明示的に定義されます。 n = 0から始めて、最初の20個のカタロニア語番号は次のとおりです。 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190... チャレンジ STDINまたは受け入れ可能な代替手段を介して負でない整数nを取り、n番目のカタロニア語番号を出力する完全なプログラムまたは関数を作成します。プログラムは、入力0〜19に対して少なくとも機能する必要があります。 I / O 入力 プログラムは、STDIN、関数の引数、またはこのメタ投稿ごとに受け入れ可能な代替のいずれかから入力を受け取る必要があります。入力した数値は、標準の10進数表現、単項表現、またはバイトとして読み取ることができます。 言語がSTDINまたは受け入れ可能な代替から入力を取得できない場合(のみ)、ハードコーディングされた変数またはプログラム内の適切な同等物から入力を取得できます。 出力 プログラムは、n番目のカタロニア語番号をSTDOUT、関数結果、またはこのメタ投稿ごとに受け入れ可能な代替物に出力する必要があります。標準の10進数表現、単項表現、またはバイトでカタロニア語番号を出力できます。 出力は適切なカタロニア語番号で構成され、オプションで1つ以上の改行が続きます。抑制できない言語のインタープリターの一定の出力(挨拶、ANSIカラーコード、インデントなど)を除き、他の出力は生成できません。 これは、最短の言語を見つけることではありません。これは、すべての言語で最短のプログラムを見つけることです。したがって、私は答えを受け入れません。 この課題では、実装されている限り、課題より新しい言語は受け入れられます。以前に未実装の言語用にこのインタープリターを自分で作成することは許可されています(推奨されます)。それ以外は、コードゴルフのすべての標準ルールに従わなければなりません。ほとんどの言語での提出は、適切な既存のエンコーディング(通常はUTF-8)でバイト単位でスコア付けされます。また、n番目のカタロニア語番号を計算するための組み込み関数が許可されていることに注意してください。 カタログ この投稿の下部にあるスタックスニペットは、a)言語ごとの最短ソリューションのリストとして、b)全体的なリーダーボードとして、回答からカタログを生成します。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 ## Language Name, N bytes …

20
ある力を合計する
単純ですが、できればさほど簡単ではない挑戦: k数値を分割する累乗を加算するプログラムまたは関数を作成しnます。すなわち: 入力:2つの正の整数nおよびk(または整数の順序ペアなど) 出力:の正の約数の総和nことがあるk整数の乗 たとえば、11!= 39916800には、キューブである6つの除数、つまり1、8、27、64、216、および1728があります。したがって、入力39916800およびが与えられると3、プログラムはそれらの合計を返し2044ます。 その他のテストケース: {40320, 1} -> 159120 {40320, 2} -> 850 {40320, 3} -> 73 {40320, 4} -> 17 {40320, 5} -> 33 {40320, 6} -> 65 {40320, 7} -> 129 {40320, 8} -> 1 {46656, 1} -> 138811 {46656, 2} -> 69700 {46656, 3} -> …

30
メルセンヌプライムですか?
数が素数であり、2 n -1の形式で記述できる場合、数はメルセンヌ素数です。ここで、nは正の整数です。 あなたの仕事は、正の整数を与えられて、それがメルセンヌ素数であるかどうかを決定することです。真実/偽の値を返す関数、またはIOを実行する完全なプログラムのいずれかを送信できます。 ルール: これはcode-golfであるため、可能な限り最短のバイトカウントでこれを行う必要があります。組み込みが許可されます。 標準的なゴルフの抜け穴が適用されます-外部ファイルからメルセンヌ素数を読み取ったり、プログラムにハードコードしたりすることはできません。 プログラムは、言語の標準整数サイズ内の値に対して機能するはずです。 テストケース 参考のために、(既知の)メルセンヌプライムのリストはこちらにあります。便利なテストケースは次のとおりです。 2 -> False 1 -> False 20 -> False 51 -> False 63 -> False 3 -> True 31 -> True 8191 -> True みなさん、メリークリスマス!あなたが祝うものは何でも、素晴らしい休日を過ごしてください:)

9
文字列をひっかく
スナックされた文字列は次のようになります。 T AnE eOf ifi ing h s x l A k e r isI amp Sna dSt あなたのタスク 文字列sとサイズをn取得し、スナックされた文字列を出力します。入力しThisIsAnExampleOfaSnakifiedString、3上記の例を生成します。 仕様書 s コードポイント33から126までのASCII文字のみが含まれます(スペースや改行は含まれません)。 s 長さは1〜100文字です。 n各出力文字列セグメントのサイズを表す整数です。「蛇」の曲線を構成する文字の各行(上/下または左/右)はn文字です。例については、テストケースを参照してください。 n 3〜10になります。 出力文字列は常に下向きになります。 各行の末尾のスペースは許可されます。 出力の最後にある末尾の改行も使用できます。 先行スペースは使用できません。 code-golfは、バイト単位の最短コードが勝つことを意味します。 テストケース a 3 a ---------- Hello,World! 3 H Wor e , l llo d! ---------- ProgrammingPuzzlesAndCodeGolf 4 …
35 code-golf  string  ascii-art  code-golf  code-golf  string  balanced-string  decision-problem  code-golf  string  geometry  grid  code-golf  tips  lisp  code-golf  quine  tips  king-of-the-hill  code-challenge  math  code-golf  string  palindrome  math  fastest-code  code-golf  string  counting  code-golf  code-golf  internet  code-golf  quine  source-layout  hello-world  code-golf  math  number  sequence  arithmetic  code-golf  ascii-art  grid  code-golf  number  grid  code-golf  string  crossword  code-golf  code-golf  ascii-art  grid  counting  code-golf  code-golf  math  sequence  arithmetic  number-theory  code-golf  code-golf  graphical-output  geometry  random  code-golf  ascii-art  grid  counting  code-golf  string  ascii-art  code-challenge  test-battery  code-golf  string  code-golf  ascii-art  kolmogorov-complexity  code-golf  interpreter  code-golf  math  sequence  code-golf  math  primes  set-partitions  code-golf 

30
モジュロ和の合計
整数が与えられた場合n > 9、その整数の数字の間に可能な挿入ごとに、追加+を挿入して評価します。次に、それらの結果を法として元の数を取ります。これらの操作の合計を出力します。 以下の例n = 47852: 47852 % (4785+2) = 4769 47852 % (478+52) = 152 47852 % (47+852) = 205 47852 % (4+7852) = 716 ----- 5842 入力 任意の便利な形式の単一の正の整数、n > 9。 出力 上記の構築手法に従った単一の整数出力。 ルール あなたの言語のデフォルトのタイプより大きい入力を心配する必要はありません。 完全なプログラムまたは機能のいずれかが受け入れられます。関数の場合、出力する代わりに出力を返すことができます。 標準抜け穴は禁止されています。 これはコードゴルフなので、通常のゴルフルールがすべて適用され、最短のコード(バイト単位)が勝ちます。 例 47852 -> 5842 13 -> 1 111 -> 6 12345 …

21
算術デリバティブ
関数の導関数は、数学、工学、物理学、生物学、化学、および他の多くの科学の基礎でもあります。今日は、接線方向にのみ関連する何か、算術微分を計算します。 定義 算術導関数a(n)またはn'は、関数の導関数に似た多くのプロパティによってここで定義されます(A003415)。 a(0) = a(1) = 0、 a(p) = 1、p任意の素数、および a(mn) = m*a(n) + n*a(m)。 第3の規則は、機能の分化のための製品のルールに基づいている:機能のためf(x)とg(x)、(fg)' = f'g + fg'。だから、数字で、(ab)' = a'b + ab'。 また、この単純な関係を介して算術導関数を負の数に拡張できるためa(-n) = -a(n)、入力は負になる場合があります。 ルール 任意の整数を指定するとn、の算術導関数を返すプログラムまたは関数を記述しますn。 入力はになり、整数のサイズと数値が大きすぎて妥当な時間を考慮できないという問題を回避します。アルゴリズムは、この範囲外の数値の算術導関数を理論的に計算できるはずです。-230 < n < 230 シンボリック数学、素因数分解、微分の組み込みが許可されています。 例 > a(1) 0 > a(7) 1 > a(14) # a(7)*2 + a(2)*7 = …

30
この数字は悪ですか?
前書き 数論では、そのバイナリ表現に1の偶数がある場合、数は悪と見なされます。今日の課題では、特定の数が悪かどうかを特定します。 チャレンジ あなたの仕事は、その数字が悪かどうかに関係なく、入力および出力として単一の非負整数を受け入れる(または返す)完全なプログラムまたは関数を書くことです。 数値が悪ければ真理値を出力し、数値が悪でなければ偽値を出力できます。 受け入れ可能な形式で入力および出力できます。 標準の抜け穴は許可されていません。 OEISシーケンスA001969は、すべての悪の番号を含むシーケンスです。 ここでは最初の10000の悪番号のリストは、参考のために、である(そしてより多くのテストケース!) この質問はcode-golfなので、短いほど良いです。 ゴルフ言語の極端に短い答えに惑わされないでください。好きな言語で送信することをお勧めします。 以下にテストケースを示します。 3 => True 11 => False 777 => True 43 => True 55 => False 666 => False リーダーボード ページの下部には、この質問のリーダーボードを含むスタックスニペットがあります。(ありがとう、@ MartinEnder) 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 # Language Name, N bytes N提出物のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: # Ruby, <s>104</s> <s>101</s> 96 bytes ヘッダーに複数の数字を含める場合(たとえば、スコアが2つのファイルの合計であるか、インタープリターフラグペナルティーを個別にリストする場合)、実際のスコアがヘッダーの最後の数字であることを確認します。 # Perl, 43 …

6
2倍にして再配置することでこの数に到達できますか?
Math.SEに関するこの質問に触発されました。 以降では1、繰り返し次の二つのいずれかの操作を行うことができます: 数を2倍にします。 または 先行ゼロがないことを除いて、任意の方法で数字を並べ替えます。 リンクされたMath.SE投稿から例を挙げると1000、次の手順でアクセスできます。 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 125, 250, 500, 1000 このプロセスでどの数値に到達できますか、最も短い解決策は何ですか? チャレンジ 正の整数Nを指定すると、可能であればN、上記のプロセスで到達する整数の最短のシーケンスを決定します。最適なソリューションが複数ある場合は、いずれかを出力します。そのようなシーケンスが存在しない場合は、空のリストを出力する必要があります。 シーケンスは、便利で曖昧さのない任意の文字列またはリスト形式にすることができます。 プログラムまたは関数を作成し、STDIN(または最も近い代替)、コマンドライン引数または関数引数を介して入力を取得し、STDOUT(または最も近い代替)、関数の戻り値または関数(out)パラメーターを介して結果を出力できます。 これはコードゴルフなので、最短の回答(バイト単位)が勝ちです。 テストケース 256までのすべての到達可能数のリストを次に示します。最初の列は数値(入力)、2番目の列は最適なステップ数(ソリューションの有効性を確認するために使用できます)、3番目は列は、そこに到達するための最適なシーケンスの1つです。 1 1 {1} 2 2 {1,2} 4 3 {1,2,4} 8 4 {1,2,4,8} 16 5 {1,2,4,8,16} 23 7 {1,2,4,8,16,32,23} 29 10 {1,2,4,8,16,32,23,46,92,29} 32 …

8
素数から四角リングを生成できますか?
どうやらそう!3つの簡単なステップで。 ステップ1 ましょうF(nは)プライムカウント機能を(素数の数より少ないか等しい示すN)。 整数シーケンス s(n)を次のように定義します。各正の整数nに対して、 tをnに初期化します。 限りtはプライムでも1でもない、置き換えるトンをすることにより、F(T)と反復します。 反復回数はs(n)です。 すべてのnについてf(n)< nであるため、反復プロセスは終了することが保証されています。 たとえば、n = 25を考えます。t = 25 を初期化します。これは素数でも1でもないため、f(25)(9)を計算します。これがtの新しい値になります。これは素数でも1でもないため、f(9)は4です。f(4)は2です。これは素数なので、ここで停止します。3回の反復を行いました(25から9、次に4、次に2)。したがって、s(25)は3です。 シーケンスの最初の40の用語は次のとおりです。シーケンスはOEISにはありません。 0 0 0 1 0 1 0 2 2 2 0 1 0 2 2 2 0 1 0 3 3 3 0 3 3 3 3 3 0 3 0 1 1 …

19
素数-1がnで割り切れるようなn番目の素数を見つける
問題 目標は、タイトルがn番目の素数を見つけることで、素数-1がnで割り切れるようにすることです。 説明 質問を理解するための例を次に示しますが、これは必ずしも解決すべき方法ではありません。それは単に質問を説明する方法として 入力として3を指定すると、まずすべての素数を調べます 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 ... 次に、素数-1がn(この場合は3)で割り切れるような素数を選択します 7 13 19 31 37 43 61 67 73 79 97 103 107 109 127 ... 次に、このシーケンスのn番目の用語を選択します 3の入力に対して19を出力します 注意 これは、シーケンス{1、n + 1、2n + 1、3n + 1 …

24
この番号はレーシアンですか?
正の整数kは、次の場合、レーシアン数です。 ki*i + j*j + i*jfor i、j整数として表現できます。 たとえば、最初の正のロジアン数は次のとおりです。1(i=1、j=0); 3(i=j=1); 4(i=2、j=0); 7(i=2、j=1); 9(i=-3、j=3); ... は、特定のに対して一意ではないことiに注意してください。例えば、も用いて生成することができます、。jk9i=3j=0 これらの数値の他の同等の特性は次のとおりです。 k表すことができるi*i + j*j + i*jためi、j負でない整数。(整数の各ペアについてi、j同じを与える非負整数のペアがありますk) k六角形のグリッド上でテッセレーションを形成する一連の連続した六角形があります(k = 4およびの図を参照k = 7)。(この特性のため、これらの数値はモバイルセルラー通信ネットワークに適用されます。) シーケンスのOEISページでその他の特性を参照してください。 チャレンジ 正の整数が与えられた場合、それがレーシアン数であれば真の結果を出力し、そうでなければ偽の結果を出力します。 プログラムまたは関数は1000、データ型の制限まで、または1分未満で入力を処理する必要があります。 コードゴルフ。最短勝。 テストケース 次の数値は、真の結果を出力するはずです。 1, 4, 7, 12, 13, 108, 109, 192, 516, 999 次の数値は偽の結果を出力するはずです。 2, 5, 10, 42, 101, 102, 128, …
33 code-golf  math  number  number-theory  decision-problem  code-golf  kolmogorov-complexity  code-golf  sequence  code-golf  path-finding  chess  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  math  arithmetic  code-golf  code-golf  number  code-golf  geometry  code-golf  math  code-golf  code-golf  kolmogorov-complexity  alphabet  code-golf  regular-expression  hexagonal-grid  king-of-the-hill  path-finding  java  code-golf  string  sorting  code-golf  string  grid  code-challenge  compression  code-golf  random  code-golf  sequence  arithmetic  code-golf  number  grid  tiling  code-golf  tips  code-golf  sequence  number-theory  recursion  code-golf  string  grid  code-golf  math  number  combinatorics  permutations  string  code-challenge  code-golf  sequence  number-theory  subsequence 

29
プレフィックスコードですか?
情報理論では、「プレフィックスコード」とは、どのキーも別のキーのプレフィックスではない辞書です。言い換えれば、これは、文字列が他の文字列で始まらないことを意味します。 たとえば、{"9", "55"}はプレフィックスコードですが、そうで{"5", "9", "55"}はありません。 これの最大の利点は、エンコードされたテキストを区切り文字なしで書き留めることができ、一意に解読できることです。これは、常に最適なプレフィックスコードを生成するHuffmanコーディングなどの圧縮アルゴリズムに現れます。 タスクは簡単です。文字列のリストが与えられたら、それが有効なプレフィックスコードかどうかを判断します。 あなたの入力: 妥当な形式の文字列のリストになります。 印刷可能なASCII文字列のみが含まれます。 空の文字列は含まれません。 出力は、真/偽の値になります。有効なプレフィックスコードの場合はTruthy、そうでない場合はfalseyです。 真のテストケースを次に示します。 ["Hello", "World"] ["Code", "Golf", "Is", "Cool"] ["1", "2", "3", "4", "5"] ["This", "test", "case", "is", "true"] ["111", "010", "000", "1101", "1010", "1000", "0111", "0010", "1011", "0110", "11001", "00110", "10011", "11000", "00111", "10010"] いくつかの誤ったテストケースを次に示します。 ["4", "42"] ["1", "2", …

6
1、2、3、14…または15ですか?
アイルランドのロックバンドU2の有名な歌は、歌手ボノがスペイン語で「1、2、3、14」(「uno、dos、tres、catorce」)と言うことから始まります。 これらの数字の重要性については、さまざまな 理論があります。どうやら公式説明は「あの夜、私たちは飲みすぎた」ということです。しかし、もっと興味深い仮説があります:Bonoは、OEISからの整数シーケンスを参照しています。 A107083: 素数であるkような整数10^k + 31。 1、2、3、14、18、44、54、... インタビューで、避けられない質問「なぜ14」を尋ねられたとき、ボノは彼がその数字に少し疲れていることを認めました。ジャーナリストは代わりに「15」を提案し、その夜のコンサートで歌詞は実際「1、2、3、15」に変更されました。(物語はスペイン語でここで読むことができます)。おそらくジャーナリストはインスピレーションを受けました A221860: インデックスkかかるprime(k) - kの電力で2、prime(k)あるk番目の素数。 1、2、3、15、39、2119、4189897、... チャレンジ 同じ言語で2つのプログラムを作成します。最初は入力nを取り、A107083のn-th項、または最初の項を出力する必要があります。同様に、2 番目はA221860の-th項、または最初の項を出力する必要があります。nnn スコアがある合計の長さをバイト単位で二つのプログラムの、プラス正方形のレーベンシュタイン距離二つのプログラムのバイト表現の間。 各文字が1バイトに対応するように文字エンコードが使用される場合、このスクリプトを使用してレーベンシュタイン距離を測定できます。 たとえば、2つのプログラムがabcdefghとのbcdEEfg場合、スコアは8 + 7 + 4^2 = 31です。 最低スコアが勝ちます。 追加規則 出力は、シーケンスごとに独立して1-basedまたは0-basedにすることができます(したがって、プログラムの一方が1-basedで、もう一方が0-basedの場合に許可されます)。 各プログラムは、一貫して、しかし互いに独立して、n-th項または最初のn項を出力できます。 プログラムまたは機能は、各シーケンスに独立して許可されます。 入出力手段と形式は、通常どおり柔軟です。標準的な抜け穴は禁止されています。

6
ターザンのオリンピックつるスイングル​​ーチンを記録する
オリンピックのツルを振る人は、標準の木でルーチンを実行します。特に、標準ツリーにnは、0アップスルーのn-1頂点aと、各非ゼロ頂点をそのn % a下の頂点にリンクするエッジがあります。したがって、たとえば、標準ツリー5は次のようになります。 3 | 2 4 \ / 1 | 0 5を3で割ったときの剰余は2であるため、5を2で割ったときまたは4で割ったときの剰余は1であり、5を1で割ったときの剰余は0です。 今年、ターザンは頂点から始まり、頂点へn - 1とスイングし、頂点へn - 2と続きn - 3、最終的に頂点に降りるまで、新しいルーチンで金を守ります0。 ルーチンのスコアは、各スイング(降車を含む)のスコアの合計であり、スイングのスコアは、ツリー内の開始点と終了点の間の距離です。したがって、標準ツリー5のターザンのルーチンのスコアは6です。 から4までのスイングが33点(ダウン、アップ、アップ)を獲得し、 から3にスイングして21ポイント(ダウン)を獲得し、 から2までのスイングが11ポイント(ダウン)を獲得し、 から降車し1て01ポイント(下)を獲得します。 正の整数nを指定すると、標準ツリー上のターザンのルーチンのスコアを計算するプログラムまたは関数を記述しnます。サンプルの入力と出力: 1 -> 0 2 -> 1 3 -> 2 4 -> 6 5 -> 6 6 -> 12 7 -> 12 8 -> 18 …
32 code-golf  math  number  number-theory  code-golf  code-golf  restricted-source  programming-puzzle  css  code-golf  parsing  code-golf  random  encryption  code-golf  ascii-art  fractal  code-golf  math  code-golf  sorting  graph-theory  path-finding  permutations  code-golf  tetris  code-golf  card-games  code-golf  math  sequence  rational-numbers  code-golf  chess  code-golf  string  geometry  grid  code-golf  ascii-art  grid  code-golf  sequence  integer  code-golf  math  number-theory  packing  polyomino  code-golf  math  code-golf  string  quine  permutations  code-golf  math  code-golf  image-processing  optical-char-recognition  code-golf  string  kolmogorov-complexity  sequence  integer  code-golf  number  permutations  palindrome  code-golf  kolmogorov-complexity  code-golf  number  sequence  string  fewest-operations  code-golf  string  kolmogorov-complexity  sequence  primes  code-golf  string  ascii-art  code-golf  string  number  alphabet  code-golf  counting  code-golf  number  sequence  number-theory  primes  code-golf  subsequence  word-search 

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