タグ付けされた質問 「array-manipulation」

配列の使用と操作を通じて特定の問題を解決するための競争。

19
列を回転させる
整数kとテキストブロック、または内部配列の長さが等しくない(テキストブロックに似ている)2d配列の場合、k番目の列のすべての文字または要素を次の位置まで上下に回転させます。それが存在します。 例 次のテキストの20番目の列を回転します(1から始まります)。 A line with more than k characters. A longer line with more than k character. A short line. Rotate here: ------v-- This is long enough. This is not enough. Wrapping around to the first line. 出力: A line with more thtn k characters. A longer line with …

29
最も一般的な倍数
混同しない最小公倍数。 複数の要素を持つ正の整数のリストを指定すると、配列内の2つの要素の最も一般的な積を返します。 例えば、リストのMCMは、[2,3,4,5,6]ある12製品のテーブルがあるとして、: 2 3 4 5 6 --------------- 2 | # 6 8 10 12 3 | # # 12 15 18 4 | # # # 20 24 5 | # # # # 30 6 | # # # # # DJMcMayhemに感謝します 12ほとんどの時間表示されます(の2倍を2*6して3*4)。我々は要素の製品を含め、それ自体、そうではないことに注意してください2*2または4*4このリストには表示されませません。ただし、同一の要素は引き続き乗算されるため、表は[2,3,3]次のようになります。 2 3 3 ---------- …

30
ベクトルを正規化する
ベクトルを正規化するとは、方向を一定に保ちながら、長さ1(単位ベクトル)にスケーリングすることです。 たとえば、3つの成分uでベクトルを正規化する場合、最初にその長さを見つけます。 | u | = sqrt(u x 2 + u y 2 + u z 2) ...次に、各コンポーネントをこの値でスケーリングして、長さ1のベクトルを取得します。 û= u÷| u | チャレンジ あなたの仕事は、署名された整数の空でないリストを与えられ、それをベクトルとして解釈し、それを正規化するプログラムまたは関数を書くことです。これは、たとえば、任意の数のディメンションで機能するはずです(テストケースを小数点以下2桁に丸める)。 [20] -> [1] [-5] -> [-1] [-3, 0] -> [-1, 0] [5.5, 6, -3.5] -> [0.62, 0.68, -0.40] [3, 4, -5, -6] -> [0.32, 0.43, -0.54, …

23
迷惑なバグがある基本的な並べ替え
入力は5-255の正の整数のリスト/シーケンス/ベクトル/配列であり、必ずしも一意ではありません。どのような入力形式が最も適切であり、各整数(および整数の量)が5〜255の範囲から一様にランダムに選択されると想定できます。 目標は、同じ(または同等の)形式で同じリストを出力することですが、昇順(非降順)にソートされます。言語学習の一般的な初期の練習。含める提出物: 正しく機能し、目標を達成する回答。そして 迷惑なバグを含む2番目の回答。時間の1%から10%の間、出力は正しい形式で、正しい要素を含むリストである必要がありますが、順序は正しくありません(正しくソートされていない任意の順序)。残りの時間、プログラムは正しく動作し、目標を達成する必要があります。 2つの答えには、レーベンシュタイン距離 1 が必要です。つまり、1バイトを削除するか、1バイトを追加するか、1バイトを変更することで、一方から他方を取得できます。 通常の抜け穴を禁止した状態で、2つの回答のうち短い方に基づいて、コードゴルフで通常どおりスコアリングします。 迷惑なバグが入力に依存しない場合、つまり同じ入力を再度使用してもバグが再現されない場合は、10%のボーナス(スコアの減少)(1%から10%の間を除く)。

6
助けて!電卓が誤動作します!
前書き 電卓の動作がおかしい。入力するときにが8表示されることがあり2ます。そして時々私がタイプするとき6それは表示する+。いくつかのボタンが混同されています! 誰が私がどちらを決定するのを手伝ってもらえますか? チャレンジ: 入力:間違った方程式のリスト、正しい結果。 出力:交換される2つのボタン。 例: 入力は次のとおりです。 123 = 3 8423 = 252 4+4 = 8 4*7-10 = 417 9/3 = 3 42-9 = -36 そのために期待される出力は、次のとおり2と*。 どうして?2と*を入れ替えると、すべての方程式が正しいからです。 1*3 = 3 84*3 = 252 4+4 = 8 427-10 = 417 9/3 = 3 4*-9 = -36 チャレンジルール: 入力は任意の合理的な形式にすることができます。スペースで区切られた単一の文字列にすることができます。文字列リストまたは-array。方程式のリストと正しい結果の別のリスト。あなたの電話。使用した入力形式を明記してください! 注:これは-5--15、-5- -15またはとしてテストケースを入力できることも意味します-5 …
28 code-golf  number  arithmetic  integer  code-golf  math  number  geometry  code-golf  grid  code-golf  math  number  sequence  primes  code-golf  sequence  kolmogorov-complexity  code-golf  string  ascii-art  alphabet  code-golf  math  sequence  integer  code-golf  number-theory  integer  natural-language  code-golf  date  code-golf  function  code-golf  ascii-art  code-golf  math  number-theory  primes  classification  code-golf  array-manipulation  decision-problem  matrix  code-golf  number  code-golf  code-golf  ascii-art  matrix  code-golf  string  code-golf  sequence  base-conversion  code-golf  code-golf  math  number-theory  combinatorics  integer-partitions  code-golf  integer  binary  base-conversion  code-golf  integer  base-conversion  palindrome  code-golf  code-golf  integer-partitions  code-golf  math  ascii-art  matrix  code-golf  number  sequence  number-theory  matrix  code-golf  interpreter  code-golf  graph-theory  code-golf  ascii-art  decision-problem  code-golf  division  code-golf  array-manipulation  primes  code-golf  string  ascii-art  code-golf  primes  counting  code-golf  matrix  unicode  code-golf  source-layout  code-golf  grammars  code-golf  string  cops-and-robbers  regular-expression  obfuscation  string  code-challenge  cops-and-robbers  regular-expression  code-golf  kolmogorov-complexity  game  card-games  code-golf  kolmogorov-complexity  code-golf  array-manipulation  matrix  code-challenge  cops-and-robbers  code-challenge  decision-problem  cops-and-robbers  code-golf  permutations 

30
ユニークな双子を見つける
2つの配列/リスト/非負整数のベクトルAとBが与えられます。あなたの仕事は、出力の整数最高であるNの両方に表示されていることをAとB、及び両方でもユニークであるAとB。 そのような番号が少なくとも1つあると仮定することができます。 任意の合理的な入力と出力の方法/フォーマットが許可されます。 これらの抜け穴は禁止されています。 これはcode-golfであるため、すべてのプログラミング言語で最短のコードが優先されます! テストケース: A、B->出力 [6]、[1、6]-> 6 [1、2、3、4]、[4、5、6、7]-> 4 [0、73、38、29]、[38、29、73、0]-> 73 [1、3、4、6、6、9]、[8、7、6、3、4、3]-> 4 [2、2、2、6、3、5、8、2]、[8、7、5、8]-> 5 [12、19、18、289、19、17]、[12、19、18、17、17、289]-> 289 [17、29、39、29、29、39、18]、[19、19、18、20、17、18]-> 17 [17、29、39、29、29、39、18、18]、[19、19、18、20、17、18]-> 17

30
三角形を数えます!
私たちは「二乗」という用語に使用されているn個の計算を意味するように、N 2を。また、「立方体」nという用語は、n 3を意味します。そうは言っても、なぜ私たちも数字を三角形にできないのでしょうか? 数字を三角形にする方法は? まず、数字を選びましょう53716。 以下に示すように、辺の長さが数字の桁数に等しい平行四辺形に配置し、2つの辺を斜めに配置します。 53716 53716 53716 53716 53716 さて、それをΔにしたいですね これを行うには、直角三角形に収まらない辺をトリミングします。 5 53 537 5371 53716 この例では、各行の合計を取得し[5, 8, 15, 16, 22]ます: 5-> 5 53-> 8 537-> 15 5371-> 16 53716-> 22 リストを合計して[5, 8, 15, 16, 22]、結果をにし66ます。これはこの数字の三角形です! 仕様とルール 入力は、負でない整数n(n≥0、n∈Z)になります。 入力を受け取り、許可された手段で出力を提供できます。 入力は、整数、整数の文字列表現、または数字のリストとしてフォーマットできます。 デフォルトの抜け穴は許可されていません。 これはcode-golfなので、バイト単位の最短コードが勝ちです! その他のテストケース 入力->出力 0-> 0 1-> 1 …

27
ビット反転順列
目標は、整数nが与えられた整数の範囲のビットを反転する関数またはプログラムを作成することです。言い換えると、インデックスがゼロの2 n個のアイテムの範囲のビット反転順列を検索する必要があります。これは、OEISシーケンスA030109でもあります。このプロセスは、FFTのインプレースCooley-Tukeyアルゴリズムなど、高速フーリエ変換の計算でよく使用されます。また、長さが2の累乗であるシーケンスのFFTの計算にも課題があります。 このプロセスでは、範囲[0、2 n -1] を反復処理し、各値をバイナリに変換し、その値のビットを反転する必要があります。各値を基数2のn桁の数値として処理します。つまり、反転は最後のnビットの間でのみ発生します。 たとえば、n = 3の場合、整数の範囲はです[0, 1, 2, 3, 4, 5, 6, 7]。これらは i Regular Bit-Reversed j 0 000 000 0 1 001 100 4 2 010 010 2 3 011 110 6 4 100 001 1 5 101 101 5 6 110 011 3 7 111 …

16
短い真実を偽造する
ブール値のリストでtrueの最長実行を見つけます。他のすべての真偽を偽造して、同じリストを返します。 入出力 リスト; 通常の形式(たとえば、文字列として区切られたリスト)。 詳細 真と偽は、言語がこれらの値に通常使用するもの、または整数1と0です。単一の文字を使用する場合、リストは連結(例:)にすることができます10001。 最長の実行に同点がある場合は、すべての同点の実行を真に保ち、すべての短い実行を偽造します。 例 input ↦ output 1,0,1,0,1 ↦ 1,0,1,0,1 1,1,0,1,1,0,1 ↦ 1,1,0,1,1,0,0 1,1,0,1,1,1,0,1,1 ↦ 0,0,0,1,1,1,0,0,0 1,1,1 ↦ 1,1,1 0,0,1 ↦ 0,0,1 0,0 ↦ 0,0 1,1,1,0,0,0,1,1,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0 ↦ 0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0 (https://stackoverflow.com/q/37447114から直接)

25
多次元配列のインデックス
CやC ++などの低レベル言語には、実際には多次元配列の概念がありません。(ベクトルと動的配列以外)で多次元配列を作成する場合 int foo[5][10]; これは実際には単なる構文糖です。Cが実際に行うのは、5 * 10要素の単一の連続した配列を作成することです。この foo[4][2] また、構文糖です。これは実際に次の要素を指します 4 * 10 + 2 または、42番目の要素。一般に、要素のインデックス[a][b]の配列では、foo[x][y]です a * y + b 同じ概念が3D配列にも適用されます。foo[x][y][z]要素があり、要素[a][b][c]にアクセスする場合、実際に要素にアクセスします。 a * y * z + b * z + c この概念は、n次元配列に適用されます。次元を持つ配列があり、D1, D2, D3 ... Dn要素にアクセスする場合S1, S2, S3 ... Sn、式は (S1 * D2 * D3 ... * Dn) + …

15
二項の二乗を示す
(任意の方法で)2つの異なる自然数(任意の妥当なサイズ)が与えられ、以下の例のようにそれらの合計の2乗を(任意の方法で)出力します。 4と3の場合、出力: 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 …

12
ワームの寿命
条項 ワームは、非負の整数のいずれかのリストであり、その右端の(すなわち、最後の)要素が呼ばれているヘッド。headが0でない場合、ワームは、headを含む要素の最も長い連続したブロックで構成されるアクティブなセグメントを持ち、すべての要素は少なくともheadと同じ大きさです。減少活性セグメントはたとえば1だけデクリメントヘッドとアクティブなセグメントであり、ワームが3 1 2 3 2アクティブなセグメントを有し2 3 2、縮小アクティブセグメントです2 3 1。 進化のルール ワームは、次のように段階的に進化します。 ステップt(= 1、2、3、...)で 、ヘッドが0の場合:ヘッドを削除する else:アクティブセグメントを、縮小されたアクティブセグメントのt + 1連結コピーで置き換える。 事実:ワームは最終的に空のリストに進化し、そのためのステップ数はワームの存続期間です。 (詳細はThe Worm Principle、LD Beklemishevの論文に記載されています。有限リストを意味する「リスト」、およびその最後の要素を意味する「頭」の使用法は、この論文から引用されています。リストの一般的な使用法は抽象データ型であり、通常headは最初の要素を意味します。) 例(括弧内のアクティブなセグメント) ワーム:0,1 step worm 0(1) 1 0 0 0 2 0 0 3 0 4 <- lifetime = 4 ワーム:1,0 step worm 1 0 1 (1) 2 …

30
アレイをトリムします!
入力として整数配列と2つの数値が与えられた場合、数値で指定された特定の量の最初と最後の要素を削除します。入力は任意の順序にすることができます。 最初のx要素(xは最初の数値入力)を削除し、最後のy要素(yは2番目の数値入力)も削除する必要があります。 結果の配列は、少なくとも2つの長さを持つことが保証されます。 例: [1 2 3 4 5 6] 2 1 -> [3 4 5] [6 2 4 3 5 1 3] 5 0 -> [1 3] [1 2] 0 0 -> [1 2]

30
行方不明の手紙を見つける
ガイドライン 仕事 入力として連続する(増加する)文字の配列を受け取り、配列(一部の言語のリスト)にない文字を返すメソッドを記述します。 ルール これはコードゴルフなので、バイト単位の最短回答が勝ちです! 常に有効な配列を取得します 常に1つの文字が欠落している 配列の長さは常に少なくとも2です。 配列には常に1つのケース(大文字または小文字)の文字のみが含まれます。 入力と同じケース(大文字または小文字)で出力する必要があります 配列は常に1文字ずつ移動します(欠落している文字をスキップします) 配列の長さは2〜25です。 配列の最初または最後の要素が失われることはありません 例 ['a','b','c','d','f'] -> 'e' ['O','Q','R','S'] -> 'P' ['x','z'] -> 'y' ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z'] -> 'v'

15
OVSFコードですか?
1sと-1sのリストが与えられたら、それが有効なOVSFコードかどうかを判断します(真偽値または偽値を出力します)。 OVSFコードは次のように定義されます。 [1] OVSFコードです。 場合はX、次に、OVSFコードであるX ++ XとX ++ -Xの両方のOVSFコードです。 以下++はリストの連結-で、リスト内のすべての要素を否定します。 他のリストは有効なOVSFコードではありません。 あなたは、入力リストにのみ含まれているとして-1と1していますが、その長さが2のべき乗ではありません空正しくリスト、などのリストを処理する必要があります。 最短コード(バイト単位)が優先されます。 テストケース [] -> False [1] -> True [-1] -> False [1, 1] -> True [1, -1] -> True [1, 1, 1, 1] -> True [1, 1, 1, 1, 1] -> False [1, -1, -1, 1, -1, 1, …

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