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

課題には数学が含まれます。また、より具体的なタグの使用を検討してください:[数値] [数値理論] [算術] [組み合わせ] [グラフ理論] [形状] [抽象代数]。

14
[N]とM反復の再帰的に連結された累積和
2つの正の整数NをM取得し[N]、M反復での連結累積和を作成します。最後の反復の結果を出力します。 連結累積合計の定義: 数字Nから始めてシーケンスを定義するX = [N] 追加Xの累積和X 手順を2 M回繰り返します。 ベクトルの累積合計X = [x1, x2, x3, x4]は次のとおり[x1, x1+x2, x1+x2+x3, x1+x2+x3+x4]です。 例N = 1とM = 4: P =累積和関数。 M = 0: [1] M = 1: [1, 1] - X = [1, P(1)] = [[1], [1]] M = 2: [1, 1, 1, 2] - X …
14 code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

14
ウィルソン数を計算する
正の整数nが与えられた場合、n 番目の ウィルソン数 W(n)を計算します。 そして、E = 1であればN原始根モジュロを有するN、そうでなければ、E = -1。つまり、整数xが存在しない場合(1 < x < n-1およびx 2 = 1 mod n)、nにはプリミティブルートがあります。 これはコードゴルフなので、入力整数n > 0 に対してn 番目のウィルソン数を計算する関数またはプログラムの最短コードを作成します。 1ベースまたは0ベースのインデックスを使用できます。最初のn個のウィルソン数を出力することもできます。 これは、OEISシーケンスA157249です。 テストケース n W(n) 1 2 2 1 3 1 4 1 5 5 6 1 7 103 8 13 9 249 10 19 11 329891 …

27
パンデジタル倍増
この CMCに触発された 0より大きい正の整数を指定して、次の操作を実行します。 10桁すべての数字(1234567890)が少なくとも1回は数字に含まれている場合は、カウントを出力してプログラムを終了します それ以外の場合は、数を2倍にして繰り返し、カウントを増やします。 カウントは0から始まり、入力が2倍になった回数です。たとえば、入力が617283945の場合、1234567890には10桁すべてが含まれているため、入力を1倍にする必要があります。 これはコードゴルフなので、最短のコードが勝ちます。必要に応じて、入力を文字列として取得できます。 テストケース input => output 617283945 => 1 2 => 67 66833 => 44 1234567890 => 0 100 => 51 42 => 55

23
行列ベクトルを計算する
少なくとも2つの要素の整数配列を指定して、配列のMatrix-Vector(以下で定義)を出力します。 Matrix-Vectorを計算するには、最初nにsize - input配列を回転させて、サイズの行列を作成しますn x n。配列の最初の要素は主対角線に続きます。これにより、マトリックス部分が形成されます。ベクトルの場合、入力配列を垂直に反転します。次に、通常の行列乗算を実行します。出力ベクトルは結果です。 例えば、 a = [1, 2, 3] まず、配列を右に2回回転して、とを取得[3, 1, 2]し[2, 3, 1]、次にそれらをスタックして3x3行列を形成します [[1, 2, 3] [3, 1, 2] [2, 3, 1]] 次に、配列を垂直に反転させてベクトルを形成します [[1, 2, 3] [[1] [3, 1, 2] x [2] [2, 3, 1]] [3]] 通常の行列乗算を実行する [[1, 2, 3] [[1] [[1+4+9] [[14] [3, 1, 2] …

12
おおよその相関を見つける
S長さのバイナリ文字列を考えnます。インデックス作成1、我々は計算することができハミング距離の間S[1..i+1]とS[n-i..n]すべてのためにiから順に0しますn-1。等しい長さの2つのストリング間のハミング距離は、対応するシンボルが異なる位置の数です。例えば、 S = 01010 与える [0, 2, 0, 4, 0]. これは0マッチ0、01ハミング距離が2に10、010マッチ010、0101 4にハミング距離があり1010 、最終的に01010自分自身にマッチします。 ただし、ハミング距離が最大1である出力のみに関心があります。したがって、このタスクではY、ハミング距離が最大で1であるかどうかを報告し、N場合そうでないます。したがって、上記の例では次のようになります [Y, N, Y, N, Y] すべてを反復するときに取得されるsとsのf(n)個別の配列の数になるように定義するYN2^nS長さの異なる可能性のあるビット文字列をn。 仕事 n開始時の増加1場合、コードを出力する必要がありますf(n)。 回答例 のn = 1..24正解は次のとおりです。 1, 1, 2, 4, 6, 8, 14, 18, 27, 36, 52, 65, 93, 113, 150, 188, 241, 279, 377, 427, 540, 632, 768, 870 …

2
あのポリゴンは誰ですか?
トポロジカルサーフェスを表す便利で便利な方法は、基本ポリゴンを使用することです。多角形の各辺は別の辺と一致し、平行または反平行のいずれかになります。たとえば、これはトーラスの基本的なポリゴンです。 これがトーラスである理由を理解するために、ポリゴンが紙であると想像できます。適切な表面を作成するために、対応するエッジが矢印が同じ方向に並ぶように紙を曲げます。トーラスの例では、紙を円柱に丸めて、2つの青いエッジ(ラベルb)を接続することから始めます。次に、チューブを取り出して曲げて、2つの赤いエッジ(a)が互いに接続するようにします。トーラスとも呼ばれるドーナツ型にする必要があります。 これには少し注意が必要です。エッジの1つが反対方向に向いている次のポリゴンで同じことをしようとすると: トラブルに巻き込まれる可能性があります。これは、このポリゴンが3次元に埋め込むことができないクラインボトルを表しているためです。このポリゴンをクラインボトルに折り畳む方法を示すウィキペディアの図を次に示します。 ご想像のとおり、ここでのタスクは、基本的なポリゴンを取得し、どのサーフェスであるかを判断することです。4面ポリゴン(処理する必要がある唯一のサーフェス)には、4つの異なるサーフェスがあります。 彼らです トーラス クラインボトル 球 射影平面 これは画像処理ではないので、入力として画像を受け取るとは思わないが、代わりに便利な表記法を使用して基本ポリゴンを表現します。上記の2つの例で、同じ文字(aまたはb)で対応するエッジに名前を付け、ねじれたエッジにねじれを示す追加のマークを付けたことに気付いたかもしれません。時計回りに進んで、上端から開始して各端のラベルを書き留めると、各基本ポリゴンを表す表記を取得できます。 たとえば、提供されたトーラスはababになり、クラインボトルはab - abになります。私たちの挑戦では、ねじれたエッジをネガでマークする代わりに、文字を大文字にします。 仕事 文字列が与えられると、それが基本ポリゴンを表すかどうかを判断し、その適切な表面に対応する値を出力します。サーフェスに正確な名前を付ける必要はありません。それぞれが4つのサーフェスの1つを表す4つの異なる出力値を必要とし、5番目の値が不適切な入力を表します。すべての基本的なケースは「簡単なテスト」セクションで説明されており、すべての車は、1つまたは無効な車と同形です。 ルール 側面には常にaおよびbのラベルが付けられるわけではありませんが、常に文字でラベルが付けられます。 有効な入力は、4つの文字で構成され、2つのタイプと2つのタイプがあります。有効な入力を得るには、常に正しいサーフェスを出力する必要があります。 無効な入力は拒否する必要があります(サーフェスを表す4つの値のいずれも出力しません)。4つのサーフェスと区別できる限り、入力を拒否するときに何でもできます。 これはコードゴルフなので、目標はソースコードのバイト数を最小限にすることです。 テスト 簡単なテスト abab Torus abAb Klein Bottle abaB Klein Bottle abAB Projective Plane aabb Klein Bottle aAbb Projective Plane aabB Projective Plane aAbB Sphere abba Klein Bottle abBa Projective …

8
到達可能な番号
定義 オイラーファイ関数(aka totient function):正の数を取り、特定の数と互いに素である特定の数より小さい正の数を返す関数。として示されφ(n)ます。 到達番号:正の整数が存在する場合x、その結果をφ(x) == n、その後nで到達可能。 仕事 与えられた正の整数が到達可能かどうかを判断する関数/プログラムを作成します。 入力 妥当な形式の正数。数は言語の能力の範囲内であると想定できます。単項入力が受け入れられます。 出力 到達可能な数値用と到達不能な数値用の2つの一貫した値。2つの値は、一貫している限り、何でもかまいません。 テストケース 以下の到達可能な番号100は次のとおりです。 1、2、4、6、8、10、12、16、18、20、22、24、28、30、32、36、40、42、44、46、48、52、54、56、58、 60、64、66、70、72、78、80、82、84、88、92、96 (OEISのA002202) ルール 標準の抜け穴が適用されます。 勝利基準 これはcode-golfです。最も少ないバイト数での送信が優先されます。 参照資料 オイラーファイ関数 OEIS A002202

25
分数を追加する
入力と同じ長さの2つの空でないリストを取り、次のことを行うプログラムまたは関数を作成します。 最初のリストの要素を使用して分子を取得し、 2番目のリストの要素を使用して分母を取得し、 (2/4=>1/2)「+」で区切られた、簡略化後の結果の小数部を表示します。 最後の小数部の後に「=」と加算結果を表示します。 例: 入力 [1, 2, 3, 3, 6] [2, 9, 3, 2, 4] 出力 1/2+2/9+1+3/2+3/2=85/18 ルールについて リストの要素は正の整数になり、 要素はスペースで区切ることができます。たとえば:1/2 + 2/9 + 1 + 3/2 + 3/2 = 85/18is ok、 末尾の改行は許可されますが、 リストは、上記以外の形式で取得することもできます(例:(1 2 3 3 6)または{1;2;3;3;6}など)。 1表すことができ1/1、 印刷する代わりに、適切な文字列を返すことができます。 間違った入力を処理する必要はありません。 最短コードが勝ちます。

4
有限グループのサブグループの数を見つける
定義 グループの定義が既にわかっている場合は、この部分をスキップできます。有限グループ、およびサブグループの。 グループ 抽象代数では、グループはタプル(G、∗)です。ここで、Gは集合であり、∗は関数G×G→Gです。次のようなです。 閉包:Gのすべてのx、yについて、x ∗ yはGにもあります(∗が関数G×G→Gであるという事実によって暗示されます)。 連想:すべてのためのX、Y、ZにおけるG、(X * Y)* Z = X *(Y * Z) 。 同一性:要素が存在するEにおけるGのようにすべてのためのxにおけるG、X * E = X = E * X。 逆:毎XにおけるG、要素が存在するYはでGように、X * Y = E = Y * X、E前の箇条書きに記載された同一要素です。 有限グループ 有限群の基である(G、*)G、有限であるすなわち、有限個の要素を有します。 サブグループ サブグループ (H *)グループの(G、*)があるようであり、Hは、の部分集合であるG(必ずしも適切ではないサブセット)および(H *)、グループ(すなわち、満足4つの基準を超える)です。 例 検討二面体群のD 3 (G、*)G = {1、A、B、C、D、E}及び*は以下に定義されているが(このようなテーブルが呼び出されケーリーテーブル): ∗ | …

12
プラスまたはマイナスのポリグロット!
提出には、数字のリスト(言語がサポートしているリスト形式、または複数の関数/コマンドラインパラメーターを使用)または数字以外の文字で区切られた文字列を使用する必要があり0123456789ます。1つの言語では、すべてを追加して合計を出力する必要があります。別の言語では、それらを順番に減算して出力する必要があります。例: 12 5 7 2 ある言語ではを出力する必要26があり、別の言語ではを出力する必要があります-2。入力されるすべての数値はより小さい正の整数になることに注意してください100。指定された20数を超えることは決してないので、より大きい2000または小さいを出力することはありません-1899。質問は?以下にコメントしてください!

1
絵をスライドパズルにする
概要 このチャレンジの目標は、フランス語でタキンとも呼ばれる15パズル / スライディングパズルの元に戻すイメージバージョンを作成することです。 詳細: 以下で構成される入力が与えられた場合: 画像、 整数n、 他の整数r、 プログラム、関数、または適合するその他のものは、入力と同じイメージ(つまり、同じサイズと形式)を出力する必要がありますが、次のプロセスが行われました。 画像をn²長方形に分割し、 それらの長方形の1つをランダムに削除し、 ポイント(2.)の影響を受ける行/列からランダムな数の連続した長方形を移動して、作成された穴を埋め、この行/列に別の1つを生成します。この番号は0、ブランクがコーナーまたはエッジにある場合になります。 (3.)r回繰り返します。 明確化: 手順(3.)で行から長方形を移動した場合、次の繰り返しで列から長方形を移動する必要があります。 行ステップで長方形を左から右に移動した場合、次の行ステップで長方形を右から左に移動する必要があります。これは、列に関して上から下および下から上と同じです。 n画像の辺の長さを分割するように選択されると仮定できます。 最後のポイント: .gif全体のプロセスを示すアニメーションは大歓迎です。 私は(これは、次の画像を使用することを提案1024x768して、)n=16とr=100モデルとして、あなたは使用することができ、他の画像を(それはもちろん、SEの規則に関連するだと準拠限り)。 標準の抜け穴ポリシーが適用されることに注意してください。 これはコードゴルフなので、短い提出が勝ちます! 例がリクエストされたので、ここに「手で」作られたものn=4とr=1 ステップ1および2 ステップ3:行ごとに、左に2つの長方形

1
難読化された整数表記
編集:この質問の新しいバージョンをmeta-golf近日中に投稿します。おしゃべり! 編集#2:チャレンジを更新するのではなく、開いたままにします。meta-golfバージョンは、ここに提供されています:/codegolf/106509/obfuscated-number-golf バックグラウンド: ほとんどの数字は、6つの異なるシンボルでのみ記述できます。 e (オイラーの定数) - (否定ではなく減算) ^ (べき乗) ( ) ln (自然対数) たとえば、i次の式を使用して虚数を変換できます。 (e-e-e^(e-e))^(e^(e-e-ln(e^(e-e)-(e-e-e^(e-e))))) ゴール: k合理的な手段で整数が与えられた場合、それらの6つのシンボルのみを使用して、その数の可能な限り短い表現を出力します。 例: 0 => "e-e" 1 => "ln(e)" 2 => "ln(ee)" // Since - cannot be used for negation, this is not a valid solution: // ln(e)-(-ln(e)) -1 => "e-e-ln(e)" ノート: 終了括弧は、文字の合計数にカウントされます。 ln( …

6
シェルピンスキーの矢じり曲線を描く
前書き シェルピンスキーアローヘッドカーブの制限がシェルピンスキーの三角形であることを曲線です。 最初は次のように始まります。 _ / \ 次に、各行が最初の行の回転バージョンに置き換えられます。 _ / \ \ / _/ \_ 次: _ / \ \ / _/ \_ / \ \_ _/ _ \ / _ / \_/ \_/ \ あなたのタスク 数値nを指定すると、Sierpinski Arrowhead Curveのn番目の反復を出力します。 0インデックスまたは1インデックスを選択できますが、回答で指定してください。 画像を生成するか、上記の形式でAscii Artを使用できます。 この曲線を生成するためにビルトインを使用することはできません。 これはcode-golfであるため、バイト数が最も少ないコードが優先されることに注意してください。

10
最大の列からすべての数字を見つける
比較的簡単な課題を次に示します。 正の整数のリストが与えられた場合: それらをグリッドに並べ、各列を合計します。たとえば、入力がの[123, 7, 49, 681]場合、グリッドは次のようになります。 1 2 3 7 4 9 6 8 1 そして、各列の合計は次のようになります[18, 19, 4]。 1 2 3 7 4 9 6 8 1 -------- 18 19 4 これらの合計の最大値(この場合は19)を見つけてから、 この最大列と同じインデックスにあるすべての数字を出力します。この場合、それは 2 9 8 これらの番号を特定の順序で出力する必要はありません。4つの入力があったとしても、3つの出力しかありません。同点の場合、最も早いインデックスを選択します。たとえば、入力がの[25, 223, 302]場合、グリッドは次のとおりです。 2 5 2 2 3 3 0 2 ------- 7 7 …
14 code-golf  math  grid 

14
ピギーバックシーケンス
私は最近自分のシーケンスを作成し(ピギーバックシーケンスと呼ばれます)、次のように動作します。 P(1)、P(2)およびP(3)= 1。 すべてのP(n)where n>3について、シーケンスは次のように機能します。 P(n) = P(n-3) + P(n-2)/P(n-1) したがって、シーケンスを続行します。 P(4)= 1 + 1/1=2 P(5)= 1 + 1/2= 3/2 =1.5 P(6)= 1 + 2/(3/2)= 7/3 =2.33333... P(7)= 2 + (3/2)/(7/3)= 37/14=2.6428571428... P(8)= 3/2 + (7/3)/(37/14)= 529/222 =2.3828828828... あなたのタスクは、与えられたとき、浮動小数点数または(im)適切な分数としてn計算しP(n)ます。 これはcode-golfなので、バイト単位の最短コードが優先されます。 誰かがシーケンスの名前を見つけられる場合は、それに応じて投稿を編集してください。 現在のリーダー:MATLおよびJelly(両方とも15バイト)。
14 code-golf  math 

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