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

行列は、行と列を持つ長方形に配置された数値のリストです。プログラミングでは、2Dアレイとも呼ばれます。マトリックスの操作に関する課題の場合は、このタグを使用してください。

14
フィボナッチスタイルの行列展開
マトリックスの各行と列に対して、その行または列の最後の2つのエントリの合計で追加のエントリを追加できます。たとえば、次の入力行列の場合: [ 1 1 1 ] [ 2 3 4 ] 結果のマトリックスは次のようになります。 [ 1 1 1 2 ] [ 2 3 4 7 ] [ 3 4 5 9 ] 整数Nの入力と、サイズが少なくとも2x2の[X、Y]行列が与えられた場合、上記の展開をN回実行し、結果を出力します。結果の行列は常にサイズ[X + N、Y + N]になります。 例: Input: Output: 2, [ 0 0 ] [ 0 0 0 0 ] [ …

15
マトリックスジグソーパズル
入力: 整数 n 2つの等しいサイズの正方行列(幅/高さがの倍数であるn) 出力: 二つの異なるご自身の選択の値、1はfalsey結果のtruthy結果と1のためのもの(そうはい、のいずれか1/0の代わりtrue/falseにもかかわらず、Javaのような言語のための有効な出力である。それらは、公式truthy / falsey値と考えられていません)。 真実/偽の出力はn by n、ある行列のサイズのブロックを他の行列と等しくなるように再配置できるかどうかを示します。 例: 入力: Matrix 1: 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 0 9 8 1 1 1 1 1 …

3
簡易カーニングを実装する
前書き カーニングとは、テキストの文字間の間隔を調整することを意味します。例として、Top次の3つのグリフで書かれた単語を考えます。 ##### ..... ..... ..#.. ..... ..... ..#.. ..##. .###. ..#.. .#..# .#..# ..#.. .#..# .#..# ..#.. ..##. .###. ..... ..... .#... ..... ..... .#... グリフ間のギャップをドットで埋めて完了させることもできますが、ギャップはどうやら広すぎるように見えます。代わりに、グリフを左にスライドさせて、ほとんど触れないようにします。 #####........ ..#.......... ..#..##..###. ..#.#..#.#..# ..#.#..#.#..# ..#..##..###. .........#... .........#... これはずっと良く見える!のバーがTの左の境界線の上にあることに注意してくださいo。この課題では、このような長方形のグリフに簡単なカーニングプログラムを実装することがタスクです。 カーニングプロセス 二長方形の2次元文字配列考える.と#同じ形状を。単純なカーニングプロセスでは、最初に1列の.sを挟んで配列を並べて配置します。次に、#右と左の配列のいくつか#が直交または斜めに隣接するまで、右の配列のそれぞれを左に1ステップ移動します。カーニングの結果は、隣接するを導入する前のステップ#です。あなたの仕事は、このプロセスを実装することです。 例を見てみましょう: Inputs: ..### #.... #.... ..##. ...#. ...## ..### ....# Process: ..###....#. …
24 code-golf  grid  code-challenge  atomic-code-golf  code-golf  combinatorics  probability-theory  card-games  code-golf  number  geometry  code-golf  decision-problem  chess  code-golf  math  number  sequence  code-golf  string  regular-expression  code-golf  arithmetic  integer  code-golf  math  array-manipulation  code-golf  number  decision-problem  integer  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  decision-problem  graph-theory  binary-matrix  code-golf  string  parsing  code-golf  string  code-golf  morse  code-golf  code-golf  string  code-golf  ascii-art  cellular-automata  code-golf  binary  base-conversion  code-golf  arithmetic  decision-problem  integer  checksum  code-golf  matrix  linear-algebra  code-golf  code-golf  game  code-golf  sequence  binary  code-golf  combinatorics  optimization  code-golf  decision-problem  quine  code-golf  rational-numbers  bitwise  code-golf  string  permutations  code-golf  kolmogorov-complexity  unicode  code-golf  ascii-art  number  code-golf  number  integer  binary  base-conversion  code-golf  array-manipulation  code-golf  chemistry  code-golf  number  sequence  fibonacci  code-golf  matrix  optimization  code-golf  number  code-golf  math  number  sequence  code-golf  math  array-manipulation  matrix  linear-algebra  code-golf  kolmogorov-complexity  cops-and-robbers  cops-and-robbers  code-golf  tips  basic  code-golf  decision-problem  binary  tiling  game  king-of-the-hill  python  code-golf  c  code-golf  ascii-art  code-golf  string  kolmogorov-complexity  alphabet  code-golf  number  code-golf  string  code-golf  number  sequence  integer  code-golf  number  permutations  restricted-complexity  restricted-time 

17
それは確率的行列ですか?
確率論的マトリックスは、マルコフ連鎖の文脈で使用される確率の行列です。 右確率的行列は、各行の合計に行列です1。 左確率的行列は、各列の合計の行列です1。 二重確率的行列は、各行及び各列の和に行列です1。 この課題では、整数を使用して確率をパーセントで表します。その場合、行または列は合計する必要が100あり1ます。 あなたの目標は、入力として整数の正方行列が与えられると、行列が右確率的、左確率的、二重確率的、またはそれらのいずれでもないことを示す4つの値の1つを出力するプログラムまたは関数を書くことです。 入力 入力には、言語に自然なマトリックスの適切な表現を使用できます。たとえば、リストのリスト、行が改行で区切られたコンマ区切り値の文字列など。 入力行列は常に正方であり、負でない整数のみを含みます。入力行列は常に少なくともになり1×1ます。 を使用して入力を渡すことができSTDINます、関数の引数として、または類似のもの。 出力 右確率的、左確率的、二重確率的、またはそれらのいずれにも対応しない4つの異なる出力を選択する必要があります。これらの出力は、渡される入力に関係なく一定でなければなりません。あなたのプログラムは同じケースに対して異なる出力を返さないかもしれません。例えば、負の数はそれらのどれにも対応しないと言っては無効です。 要するに、出力と4つの可能なケースとの間には1対1の対応が必要です。これらの4つの出力のいくつかの例は{1, 2, 3, 4}、{[1,0], [0,1], [1,1], [0,0]}またはでさえあり{right, left, doubly, none}ます。 プログラムが使用する4つの出力を答えてください。 行列が二重確率である場合、右または左の確率ではなく、二重確率に対応する出力を返す必要があります。 出力をSTDOUTに印刷し、関数から返すか、類似のものを返すことができます。 テストケース [100] => Doubly stochastic [42] => None of those [100 0 ] => Doubly stochastic [0 100] [4 8 15] [16 23 42] => …
24 code-golf  matrix 

15
セミパリンドロームパズル
回文とは、それ自体が逆の言葉です。 今ではパリンドロームのように見えるかもしれないがそうではない単語がいくつかあります。たとえば、単語 はパリンドロームsheeshで sheeshはありません。その逆はhseehsどちらが異なるかを考えshてみましょう。しかし、単一の文字と考えると、逆はになりsheeshます。この種の単語をセミパリンドロームと呼びます。 具体的には、単語をいくつかのチャンクに分割して、チャンクの順序が逆になったときに元の単語が形成される場合、単語はセミパリンドロームです。(sheeshこれらのチャンクはsh e e sh)単語の両方の半分からの文字を含むチャンクも必要ありません(そうでない場合、すべての単語はセミパリンドロームになります)。たとえば、元の単語の両側の文字を含むチャンク()があるrearため、セミパリンドロームではありません。奇数の長さの単語の中心文字は単語のどちら側にもないと考えます。したがって、奇数の長さの単語の場合、中心文字は常に独自のチャンクになければなりません。r ea rea あなたの仕事は、正の整数のリストを取得し、それらがセミパリンドロームかどうかを判断することです。コードは、入力がセミパリンドロームの場合とそうでない場合の2つの一貫した等しくない値を出力する必要があります。ただし、コードのバイトシーケンスはセミパリンドロームそのものでなければなりません。 回答はバイト単位でスコアリングされ、バイト数が少ないほど優れています。 テストケース [] -> True [1] -> True [2,1,2] -> True [3,4,2,2,3,4] -> True [3,5,1,3,5] -> True [1,2,3,1] -> False [1,2,3,3,4,1] -> False [11,44,1,1] -> False [1,3,2,4,1,2,3] -> False より多くのテストケースを生成するプログラム。 恐ろしいことは、これらが一般化されたスマランダチェ回文に似ていることを指摘した。したがって、さらに読みたい場合は、1つの場所から始めてください。

10
最短の一意に識別する部分文字列
文字列のリストが与えられたら、各文字列を、空でない部分文字列の1つで置き換えます。これは、リスト内の他の文字列の部分文字列ではなく、できるだけ短くします。 例 リストを考えると["hello","hallo","hola"]、"hello"ただで置き換える必要があり"e"、この部分文字列がに含まれていないとして、"hallo"そして"hola"、それはできるだけ短くしています。"hallo"いずれかで置き換えることができる"ha"か、"al"と"hola"のいずれかによって"ho"、"ol"または"la"。 ルール 文字列は空ではなく、同じ大文字と小文字のアルファベットのみを含むと想定できます。 このような部分文字列はリスト内の各文字列に存在すると仮定できます。つまり、リスト内の文字列は他の文字列の部分文字列にはなりません。 入力と出力は任意の合理的な形式にすることができます。 これはcode-golfなので、選択した言語でできるだけ少ないバイトを使用するようにしてください。 テストケース ほとんどの場合、可能な出力は1つだけです。 ["ppcg"] -> ["p"] (or ["c"] or ["g"]) ["hello","hallo","hola"] -> ["e","ha","ho"] ["abc","bca","bac"] -> ["ab","ca","ba"] ["abc","abd","dbc"] -> ["abc","bd","db"] ["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"] ["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"] 関連:最短識別サブストリング -同様のアイデアですが、より複雑なルールと扱いにくい形式です。
23 code-golf  string  code-golf  string  code-golf  array-manipulation  code-golf  quine  code-golf  array-manipulation  integer  matrix  classification  code-golf  quine  code-golf  string  matrix  conversion  code-golf  string  number  code-golf  string  code-golf  number  sequence  integer  code-golf  decision-problem  matrix  code-golf  string  code-golf  math  code-golf  math  array-manipulation  combinatorics  code-golf  random  code-golf  code-golf  alphabet  code-golf  python  c  code-golf  base-conversion  code-golf  string  counting  code-challenge  code-generation  fastest-code  code-golf  kolmogorov-complexity  matrix  code-golf  string  code-golf  array-manipulation  decision-problem  random  sudoku  code-golf  chess  code-golf  card-games  encode  code-golf  decision-problem  code-golf  code-golf  math  array-manipulation  matrix 

21
「スラッシュ」順のマトリックス
2つの正の数N >= 2を与えN <= 100、次の規則に従う行列を作成します。 最初の番号は位置から始まります [0,0] 2番目の番号は位置から始まります [0,1] 3番目の番号が最初の番号(位置[1,0])より下になります 次の数字は「スラッシュ」方向に移動します 使用される番号の範囲は[1, N1 * N2]です。したがって、数値は1から始まり、両方の入力の乗算結果になります。 入力 2つの数字N >= 2とN <= 100。最初の数は行の量、2番目の数は列の量です。 出力 マトリックス。(多次元配列または改行付き文字列として出力できます) 例: 与えられた数字の3 and 5出力: 1 2 4 7 10 3 5 8 11 13 6 9 12 14 15 与えられた数字 2 and 2 1 2 3 4 …
23 code-golf  matrix 

3
最小の長方形カバー
長方形カバー 次のようなビットのマトリックスがあるとします。 1 1 0 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1 0 1 このマトリックスの長方形カバーを見つけたいと思います。これは、0を含まないが、すべて1を含むマトリックスの長方形のサブセットのセットです。サブセットは互いに素である必要はありません。上記のマトリックスの長方形カバーの例を次に示します。 +----+ +----+ |1 1| 0 0 0 …

27
一般化されたマトリックストレース
インスピレーション。 与えられた(とにかく): 2つの引数(または2つの要素のリストで構成される単一の引数)ブラックボックス関数、(入力と出力は1、2、3、…)f: ℤ+ × ℤ+ → ℤ+ 少なくとも2行2列の厳密に正の整数行列 行列の関数traceを返します。 関数トレースとは何ですか? 通常のマトリックストレースは、マトリックスの主な対角線(左上から右下)の合計です。 [[1,2,3],[4,5,6],[7,8,9]]→ [1,5,9]→ 1+5+9→15 しかし、加算する代わりfに、対角線に沿って適用したい: [[1,2,3],[4,5,6],[7,8,9]]→ [1,5,9]→ f(f(1,5),9)かf(1,f(5,9)) 左から右または右から左のどちらを使用するかを明記してください。 指定された行列とすべての中間値は、言語の整数ドメイン内の厳密に正の整数になります。行列は非正方形の場合があります。 例 f(x,y) = xy、[[1,2,3],[4,5,6],[7,8,9]]→ 1×5×9→45 f(x,y) = xy、[[1,2,3],[4,5,6],[7,8,9]]→ →1591 f(x,y) = x-y、[[4,5,6],[1,2,3]]→ 4-2→2 f(x,y) = (x+y)⁄2、[[2,3,4],[5,6,7],[8,9,10]]→ 5または7 f(x,y) = x+2y、[[1,2,3],[4,5,6],[7,8,9]]→ 47または29 f(x,y) = max(x,y)、[[1,2,3],[4,5,6],[7,8,9]]→ max(1,5,9)→9 f(x,y) = 2x、[[1,2,3],[4,5,6],[7,8,9]]→ 2または4 …

12
和で行列を埋める
チャレンジ: 正方形の入力行列Aが与えられた場合、4辺すべてに1行1列の行列を埋め込みます。 上下の行の各要素の値は、対応する各列の要素の合計である必要があります。 左右の列の各要素の値は、対応する各行の要素の合計である必要があります。 左上の要素と右下の要素の値は、対角線上の要素の合計である必要があります 右上隅と左下隅の要素の値は、対角線の要素の合計である必要があります。 例: A = 1 5 3 3 2 4 2 5 5 Output: 8 6 12 12 7 9 1 5 3 9 9 3 2 4 9 12 2 5 5 12 7 6 12 12 8 説明: 左上の要素と右下の要素は、対角線1 + 2 + 5 …

16
ピラミッド型マトリックスを作成する
ピラミッド型マトリックスは、以下の2つのマトリックスのように、すべての数値が中心点から増減する正方マトリックスです。 1 1 1 1 1 1 2 2 2 1 1 2 3 2 1 1 2 2 2 1 1 1 1 1 1 または: 3 3 3 3 3 3 2 2 2 3 3 2 1 2 3 3 2 2 2 3 3 3 3 …

19
ダイクストラの挑戦
今年50歳を迎えるインタラクティブなツールとしてAPLに敬意を表して発表 バックグラウンド ケン[アイバーソン]は、1963年8月、ニュージャージー州プリンストンで開催された機械言語構造に関する作業会議で、論文「プログラミング言語の形式主義」を発表しました。(バッカス、カレー、ダイクストラ、フロイド、アイバーソン、ニューウェル、ペルリス、ウィルクス)。この論文はまた、プレゼンテーション後に行われた議論を記録し、最後にケンと[Edsger] Dijkstraの間のやり取りが行われました。 チャレンジ たとえば、対応する行と列のインデックスの合計に等しい行列Mのすべての要素の合計など、より複雑な演算をどのように表現しますか? スニペットまたは式(完全なプログラムまたは関数は不要)を記述して、インデックスの合計に等しい特定の整数行列の各要素の合計を計算します。または、FryAmTheEggmanが言うように、要素a ijの行列Mが与えられると、a ij = i + j である各a ijの合計を返します。 マトリックスが既に変数またはメモリの場所にあると仮定することも、引数または入力として受け取ることもできます。0または1ベースのインデックスを使用できます。 テストケース 0 空行列用 2 00ベースのインデックスまたは21 ベースのインデックス 1 5 2 9 4 2 5 9 6 20ベースまたは101ベース 0 3 0 4 0 4 1 4 4 3 1 2 -2 4 -2 -1 11 3 …

22
重複する文字列ブロック
チャレンジ: 複数行の文字列のリストが与えられたら、それらを(左上で)オーバーラップし、結果を出力します。 例: 入力:["aaaa\naaaa\naaaa\naaaa","bb\nbb\nbb","c"] 出力: cbaa bbaa bbaa aaaa チャレンジルール: 入力形式は柔軟です。入力を行の2Dリスト(つまり[["aaaa","aaaa","aaaa","aaaa"],["bb","bb","bb"],["c"]])または文字の3Dリスト(つまり)として取得でき[[["a","a","a","a"],["a","a","a","a"],["a","a","a","a"],["a","a","a","a"]],[["b","b"],["b","b"],["b","b"]],[["c"]]]ます。STDINを使用して、すべての入力を1つずつ取得できます。等。 出力形式は厳密です。複数行の文字列を印刷するか返すかを選択できます。(言語に文字列がない場合は、代替として文字の2Dリストとして出力することができます。ただし、言語に文字列がまったくない場合のみです。) 入力リストの順序はもちろん重要です(ただし、必要に応じて入力を逆にすることもできます)。 入力は、ユニコード範囲で印刷可能なASCII文字を含むことになる[33,126][33,126][33,126](!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)。 入力は長方形のみです(したがって、奇妙な形はありません)。ただし、出力は必要な長方形ではありません。 末尾のスペースと単一の末尾の改行が許可されます。先行スペースや改行はありません。 一般的なルール: これはcode-golfであるため、バイト単位の最短回答が優先されます。 コードゴルフ言語では、コードゴルフ以外の言語で回答を投稿しないようにしないでください。「任意の」プログラミング言語の可能な限り短い答えを考えてみてください。 デフォルトのI / Oルールを使用した回答には標準ルールが適用されるため、STDIN / STDOUT、関数/メソッド、適切なパラメーター、戻り値型、完全なプログラムを使用できます。あなたの電話。 デフォルトの抜け穴は禁止されています。 可能であれば、コードのテストへのリンク(TIOなど)を追加してください。 また、回答の説明を追加することを強くお勧めします。 テストケース: 入力:["aaaa\naaaa\naaaa\naaaa","bb\nbb\nbb","c"] 出力: cbaa bbaa bbaa aaaa 入力:["12345\n54321","00\n00\n00\n00","001\n011\n012"] 出力: 00145 01121 012 00 入力:["sm\noo\nmr\nee\nt!\nh_\ni_\nn_\ng_","!@#$%^\n&*()_+\nqwerty\nuiopas","this\nis_a\ntest"] 出力: this%^ is_a_+ testty uiopas t! h_ i_ n_ …

23
アスキーアートオクタゴン
入力整数を指定するとn > 1、n文字で構成される辺の長さのASCIIアートオクタゴンを出力します。以下の例を参照してください。 n=2 ## # # # # ## n=3 ### # # # # # # # # # # ### n=4 #### # # # # # # # # # # # # # # # # #### n=5 ##### # # # # # # …
22 code-golf  ascii-art  code-golf  geometry  code-golf  balanced-string  code-golf  cops-and-robbers  code-challenge  cops-and-robbers  code-golf  code-golf  random  cryptography  code-golf  array-manipulation  number  code-challenge  integer  code-golf  math  integer  code-golf  math  math  parsing  image-processing  test-battery  math  number  combinatorics  fastest-code  code-golf  code-golf  math  number-theory  rational-numbers  polynomials  code-golf  math  geometry  code-golf  code-golf  number-theory  primes  factoring  code-golf  restricted-source  code-golf  string  decision-problem  counting  code-golf  math  sequence  fibonacci  code-golf  array-manipulation  counting  code-golf  array-manipulation  number-theory  code-golf  array-manipulation  code-golf  random  code-golf  string  hexadecimal  code-golf  string  code-challenge  sorting  code-golf  number  floating-point  code-golf  sorting  code-golf  decision-problem  fibonacci  code-golf  number  combinatorics  code-golf  string  code-golf  math  code-golf  electrical-engineering  code-golf  javascript  code-golf  base-conversion  code-golf  array-manipulation  matrix  binary-matrix  code-golf  kolmogorov-complexity  python  perl  ruby  code-golf  number  code-golf  optimization  integer-partitions  code-golf  string  code-golf  ascii-art 

16
3行3列の行列の逆行列を見つける
チャレンジ a, b, c, d, e, f, g, h, i入力として、正方行列に対応する9つの数値を与えます。 M=⎛⎝⎜adgbehcfi⎞⎠⎟M=(abcdefghi)\mathbf{M} = \begin{pmatrix}a& b& c\\ d& e& f\\ g& h& i\end{pmatrix} 行列の逆行列M−1M−1\mathbf{M}^{-1}を見つけて、その成分を出力します。 逆行列 3 x 3の逆行列は、次の式に従います。 MM−1=M−1M=I=⎛⎝⎜100010001⎞⎠⎟MM−1=M−1M=I=(100010001)\mathbf{MM}^{-1} = \mathbf{M}^{-1}\mathbf{M} = \mathbf{I} = \begin{pmatrix}1&0&0\\0&1&0\\0&0&1\end{pmatrix} そして、次のように計算できます: M−1=1det(M)CTM−1=1det(M)CT\mathbf{M}^{-1} = \frac{1}{\det(\mathbf{M})}\mathbf{C}^T ここで、は補因子の行列です。CC\mathbf{C} C=⎛⎝⎜ei−fhch−bibf−cefg−diai−cgcd−afdh−egbg−ahae−bd⎞⎠⎟C=(ei−fhfg−didh−egch−biai−cgbg−ahbf−cecd−afae−bd)\mathbf{C}=\begin{pmatrix}ei-fh&fg-di&dh-eg\\ch-bi&ai-cg&bg-ah\\bf-ce&cd-af&ae-bd\end{pmatrix} そして、は転置です。CCTCT\mathbf{C}^TCC\mathbf{C} CT=⎛⎝⎜ei−fhfg−didh−egch−biai−cgbg−ahbf−cecd−afae−bd⎞⎠⎟CT=(ei−fhch−bibf−cefg−diai−cgcd−afdh−egbg−ahae−bd)\mathbf{C}^T = \begin{pmatrix}ei-fh&ch-bi&bf-ce\\fg-di&ai-cg&cd-af\\dh-eg&bg-ah&ae-bd\end{pmatrix} そしての決定要因である。Mdet(M)det(M)\det(\mathbf{M})MM\mathbf{M} det(M)=a(ei−fh)−b(di−fg)+c(dh−eg)det(M)=a(ei−fh)−b(di−fg)+c(dh−eg)\det(\mathbf{M}) = a(ei-fh)-b(di-fg)+c(dh-eg) 実施例 たとえば、入力がであるとしましょう0, -3, …

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