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

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

21
列ごとの合計
数値の空でない行の空でないリストが与えられた場合、列ごとのsumを計算します。これは、最長の入力行の長さを持つ別のリストです。出力リストの最初のエントリは、入力行の最初の全体の合計、2番目のエントリはすべての2番目の要素(使用可能な場合)などの合計です。次の例でより適切に説明すると思います。 Input: {[1,2,3,4],[1],[5,2,3],[6,1]} Computation: [1,2,3,4] + . . . [1]. . . + + + . [5,2,3]. + + . . [6,1]. . = = = = Output: [13,5,6,4] テストケース {[0]} -> 0 {[1],[1,1,1,1]} -> [2,1,1,1] {[1],[1,2],[1,2,3],[1,2,3,4]} -> [4,6,6,4] {[1,6,2,-6],[-1,2,3,5]} -> [0,8,5,-1]

26
デジタル合計フィボナッチ
私たちは皆、フィボナッチ数列に精通しています: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765 ただし、代わりに、前の2つのエントリのデジタル合計をf(n) = f(n-1) + f(n-2)取得します。 シーケンスは引き続きで始まる必要があり0, 1、その後、違いはすぐに明らかになります。このリストには0のインデックスが付いていますが、1のインデックスも使用できます。 f(0) = 0 f(1) = 1 f(2) = 1 # 0 + 1 f(3) = 2 # 1 + 1 f(4) …

21
ランダムな混乱を生成する
チャレンジの説明 シーケンスの「混乱」とは、元の位置に要素が現れない順列です。たとえば、ECABDはの混乱ですがABCDE、そうでCBEDAはありません: ABCDE | | <- B and D are in their orignal positions CBEDA シーケンスを指定して、ランダムな混乱を生成します。 ノート 入力として文字列、または要素(整数、文字、オブジェクトなど)の配列/リストを使用できます。 新しいオブジェクトを返す代わりに、要素を交換することで既存のオブジェクトを変更できます 各混乱は、生成される確率が等しくなければなりません シーケンスに複数の要素があり、複数回出現する要素はないと想定できます。

9
ブダペスト
課題は簡単です。有限の非負整数が与えられると、ネストされた配列を出力するプログラムまたは関数を作成します。 ルール コードは、整数0 ‌≤ n ‌ <2 31 ごとに一意の有効なネストされた配列を生成する必要があります。 最大16個のオープンブラケットを持つネストされた配列はすべて、この範囲内で出力する必要があります。(これは、コードが16個を超える開き括弧を持つネストされた配列を出力できないことを意味するものではありません。) コードは、実際の配列(コンマの有無にかかわらず)の代わりに、ネストされた配列の文字列表現を出力する場合があります。 1つの可能なマッピング: 0 -> [] 1 -> [[]] 2 -> [[[]]] 3 -> [[], []] 4 -> [[[[]]]] 5 -> [[[], []]] 6 -> [[[]], []] 7 -> [[], [[]]] 8 -> [[], [], []] 9 -> [[[[[]]]]] etc. 得点 …

17
範囲を修復する
いくつかがに置き換えられた正の整数のリストの入力が与えられた場合、置き換えられて0変更された欠損数を含むリストを出力します0。 入力リストの特性: リストの長さは常に少なくとも2です。 入力リストをとして定義しa、「元のリスト」(つまり、番号が0s に置き換えられる前のリスト)を定義しますb。いずれの場合もn、またはのa[n]いずれb[n]か0です。 いずれの場合もn、またはのb[n]いずれb[n-1] + 1かb[n-1] - 1です。つまり、の数値bは常に1、以前のインデックスから各インデックスごとに変化します。もちろん、最初の要素はこの規則を免除されています。 ゼロのすべての実行a(つまり、連続した要素がに置き換えられます 0)xに対して、実行の開始のインデックスとy 終了を表すa[x-1]to a[y+1]は、常に増加のみまたは減少のみのいずれかになります。したがって、ゼロを埋める方法は1つしかありません。 これは、配列の最初の要素も最後の要素もゼロにできないことも意味します。 簡単に言えば、ゼロの連続を埋めるには、前の数字から次の数字までの範囲に置き換えるだけです。たとえば、次の入力 1 2 0 0 0 6 7 出力する必要があります 1 2 3 4 5 6 7 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース: In Out ----------------------------------------------------- 1 0 0 0 5 6 0 4 0 0 1 | 1 2 …

30
Takewhileを実装する
紹介とクレジット 今日は派手なプレリュードなし:を実装してくださいtakewhile。 これのバリエーション(非自明なデータ構造)は、大学の関数型プログラミングコースでの課題でした。この課題は現在閉鎖されており、クラスで議論されており、ここに投稿する教授の許可があります(明示的に尋ねました)。 仕様 入力 入力は、正の整数のリスト(または言語の同等の概念)になります。 出力 出力は、正の整数のリスト(または言語の同等の概念)である必要があります。 何をすべきか? あなたのタスクは、takewhile考慮中の数が偶数であるという述語を使用して実装することです(言語組み込みが許可されます)(テイクタイムに焦点を合わせるため)。 したがって、リストを最初から最後まで反復し、条件が(偶数)である間に出力リストにコピーし、条件を満たさない要素にヒットするとすぐに、操作と出力を中止します。 (ステップバイステップの例を以下に示します)。この高次機能は、takeWhile(takewhile)とも呼ばれます。 潜在的なコーナーケース 入力リストに比べて出力リストの順序は、例えば、変更することはできません[14,42,2]になってないかもしれません[42,14]。 空のリストは有効な入出力です。 誰が勝ちますか? これはコードゴルフなので、バイト単位の最短回答が勝ちです! もちろん、標準ルールが適用されます。 テストベクター [14, 42, 2324, 97090, 4080622, 171480372] -> [14, 42, 2324, 97090, 4080622, 171480372] [42, 14, 42, 2324] -> [42, 14, 42, 2324] [7,14,42] -> [] [] -> [] [171480372, 13, 14, …

3
助けて!電卓が壊れた!(整数式を電卓のキーストロークに変換します)
前書き 助けて!誤ってTI-84計算機を窓から落とし(方法は聞かないでください)、壊れました。明日は数学のテストがありますが、見つけることができるのはこれらのボタンを備えた計算機だけです。 7 8 9 + 4 5 6 - 1 2 3 * 0 = / 私の数学のテストは、式の評価に関するレビューテストです。などの式を取得1+(5*4)/7し、予備の計算機でそれを解決するために必要なキーストロークに変換するプログラムが必要です。(そして、あなたが疑問に思っている場合、これは実際に私に起こりました)。 チャレンジ 含有する非空の入力文字列が与えられた唯一の文字0-9、(、)、+、-、*、および/、出力スペースで区切られた文字列内のキーストローク(例えば。1 + 3 / 3 =)。出力の最後には常に等号が必要です。標準の抜け穴は許可されていません。 例: 入力:1+(5*4)/7、出力:5 * 4 / 7 + 1 = 入力:6*(2/3)、出力:2 / 3 * 6 = 入力:(7-3)/2、出力:7 - 3 / 2 = この課題を簡単にするには: 入力には、計算機をクリアする必要のない一連のキーストロークが入力されていると想定1-(7*3)できます(計算する必要があるため無効です。7 * 3実行するには計算機をクリアします1 …

17
SE投稿で上位5つのコメントスコアを表示する
Stack Exchangeスクリプトは、サイトのメインページに最初に表示される質問または回答に関する5つのコメントを、それらへの賛成票の数によって決定します。投票数が最も多い5つのコメントが表示されます。あなたの仕事は、この動作を再現することです。 STDIN、コマンドライン引数、または関数の引数を使用して入力を取得する完全なプログラムまたは関数を作成し、上位5つのコメントスコアを出力または返します。入力は、ある投稿のコメントに対する賛成票の数を表す整数の配列になります。たとえば、の入力 0, 2, 5, 4, 0, 1, 0 は、最初のコメントには投票がなく、2番目のコメントには2票、3番目には5票、4番目には4票、というようになります。 入力に含まれるコメントスコアが5つ以下の場合、出力には指定されたもののみが含まれます。2つ以上のコメントスコアが同じ場合、最初のスコアが表示されます。入力配列には、少なくとも1つのコメントスコアが含まれると想定できます。 出力内の番号は簡単に区別できるはずです(したがって、ケース1の02541は無効です)。それ以外の場合、出力形式に制限はありません。数字はスペースまたは改行で区切られているか、リスト形式などになっている場合があります。 テストケース: [0, 2, 5, 4, 0, 1, 0] -> [0, 2, 5, 4, 1] [2, 1, 1, 5, 3, 6] -> [2, 1, 5, 3, 6] [0, 4, 5] -> [0, 4, 5] [1, 1, 5, 1, …

29
ラッキーハウス
ラッキーハウスとして知られるスーパーマリオ3Dワールドにはミニゲームがあります。4ブロックのスロットマシンで構成されています。 各ブロックは5つの異なるアイコン(花、葉、ベル、チェリー、ブーメラン)のいずれかであり、プレーヤーの目標は、できるだけ多くの同一のアイコンを取得することです(ビデオを参照))。 プレイヤーにはコインが与えられ、コインはさらにライフに変換されます。あなたの仕事は、獲得した追加のライフの数を計算することです。 一致するアイコンの数に応じて、報われるコインの量は次のとおりです。 一致なし-10コイン 1ペア-100コイン 2ペア-200コイン 三種類-300コイン 4種類-777コイン 100コインごとに1つの追加ライフ(1UP)を獲得します。したがって、1ペアで正確に1UP 、2 ペアで2UP 、3-of-a-kindで 3UP を獲得することが保証されます。ただし、対戦なしまたは4種類の勝ちで獲得したライフの数は、最初のコインストックによって異なります。 ソース:スーパーマリオウィキ 入力 あなたが最初のコイン株式与えられている0 ≤ C &lt; 1000≤c&lt;1000 \le c < 100と4つの値のリストを[ v1、v2、v3、v4][v1、v2、v3、v4][v_1,v_2,v_3,v_4]スロットマシンの最終的なアイコンを表します。 出力 余分な生活の数が勝った:、、、3、7または8を000111222333777888。 ルール アイコンは、リスト、文字列、または4つの異なるパラメーターなど、適切な形式で取得できます。 各アイコンは、1桁の整数または単一の文字で表されます。。回答で使用されるアイコンのセットを指定してください。(ただし、それらがどのようにFlower、Leaf、Bellなどにマッピングされるかを説明する必要はありません。それはまったく問題ではないからです。) 出力値を再マップすることはできません。 これは🎰code -golf isです。 テストケース 次の例では、整数のリストを使用してアイコンを表します。[ 1..5 ][1..5][1..5] coins icons output explanation ------------------------------------------------------------------------- 0 [1,4,2,5] 0 no matches …

8
フロップする方法を教えてください
コンピューターサイエンティストとして、おそらくpopとpushの基本的なリスト操作に慣れているでしょう。これらは、要素のリストを変更する簡単な操作です。しかし、操作フロップについて聞いたことがありますか?(フリップフロップのように)?とても簡単です。番号nを指定すると、リストの最初のn要素を逆にします。以下に例を示します。 &gt;&gt;&gt; a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] &gt;&gt;&gt; a.flop(4) [4, 3, 2, 1, 5, 6, 7, 8, 9, 10] フロップ操作のクールな点は、ソートなど、リストに対してクールなことを実行できることです。フロップでも同様のことを行います。 整数のリストを指定すると、「Neighbor it」。つまり、重複する要素がすべて連続して表示されるように並べ替えます。 これはフロップで行えます!たとえば、次のリストをご覧ください。 &gt;&gt;&gt; a = [3, 2, 1, 4, 3, 3, 2] &gt;&gt;&gt; a.flop(4) [4, 1, 2, 3, 3, 3, 2] &gt;&gt;&gt; …

21
インデックスと値を交換する
タスク 入力が整数のリスト/配列Xであり、出力が整数Yのセットのリストであるプログラムまたは関数を記述します。これにより、各セットY [ i ]の各要素eに対して、X [ e ] = i、Yのセットの要素の総数がXの要素の数と等しくなるようにします。 (これは基本的にハッシュテーブル/辞書を逆にするのと同じ操作ですが、代わりに配列に適用されます。) 例 これらの例では1ベースのインデックス付けを想定していますが、必要に応じて0ベースのインデックス付けを代わりに使用できます。 X Y [4] [{},{},{},{1}] [1,2,3] [{1},{2},{3}] [2,2,2] [{},{1,2,3}] [5,5,6,6] [{},{},{},{},{1,2},{3,4}] [6,6,5,5] [{},{},{},{},{3,4},{1,2}] 明確化 必要に応じて、セットをリストとして表すことができます。その場合、要素の順序は重要ではありませんが、要素を繰り返すことはできません。 妥当な明確なI / O形式を使用できます。たとえば、セットの要素をスペースで区切り、セット自体を改行で区切ることができます。 Yは有限長で、少なくともXのすべての要素を配列インデックスとして持つのに十分な長さでなければなりません。ただし、Xの最大要素よりも長くなる場合があります(余分な要素は空のセットになります)。 Xの要素はすべて有効な配列インデックスになります。つまり、0ベースのインデックスを使用する場合は負でない整数、1ベースのインデックスを使用する場合は正の整数になります。 勝利条件 コードゴルフの挑戦、短い方が良いです。

23
nから最大n桁離れた位置を見つける
この質問の続編。 仕事 正の整数の配列が与えられた場合、次の最大要素kを見つけます。 存在するいくつかの正の整数距離Nは、アレイ内の要素が配置ように、n個 の場所は、左または右からkが等しいN。 配列には、この条件を満たす少なくとも1つの要素が含まれていることが保証されています。 最短のコード(バイト単位)が優先されます。好きなI / O形式を選択できます。 例 与えられた入力 [4, 6, 7, 9, 3, 6, 5, 7, 2] 適格な値は次のとおりです。 4あるように、7その右側に位置する7位に 最初に6、3その右側に3つの位置があるため 3あるように、4その左に位置する4つの位置が 5あるように、2その右側に位置する2つの位置が 2番目7は、3左側に3つの位置があるためです。 これらの値のうち、最大値は7です。 テストケース [1, 13] → 13 [2, 9, 8, 3, 72, 2] → 8 [5, 28, 14, 5, 6, 3, 4, 7] → 14 …

28
超対数を計算する
これは簡単な課題です。 数を考えるとn &gt;= 0、出力超対数(またはログ*、ログスターを、または対数を繰り返し、同等であるため、nこのような課題に対して負になることはありません。)のn。 これは、テトラションに対する2つの逆関数の1つです。もう1つはスーパールートです。これは関連する質問です。 例 Input Output 0 0 1 0 2 1 3 2 4 2 ... 15 2 16 3 ... 3814279 3 3814280 4 ルール 可能ですが、小数をサポートする必要はありません。 少なくともの入力をサポートする必要があり3814280 = ceiling(e^e^e)ます。 のような値をハードコーディングすることはできません3814280。(あなたのプログラムは理論的にはより大きな数値をサポートしなければなりません。)アルゴリズムを実装したいです。 最短のコードが優先されます。 関連OEIS
29 code-golf  math  code-golf  array-manipulation  sorting  code-golf  math  arithmetic  matrix  code-golf  string  kolmogorov-complexity  code-golf  string  code-golf  math  sequence  arithmetic  recursion  code-golf  math  ascii-art  sequence  code-golf  math  array-manipulation  code-golf  code-golf  kolmogorov-complexity  code-golf  string  code-golf  string  decision-problem  code-golf  array-manipulation  tips  javascript  json  code-golf  math  string  number  number-theory  code-golf  math  sequence  fibonacci  number  arithmetic  fastest-code  integer  code-golf  math  sequence  code-golf  string  file-system  tips  golfscript  code-golf  string  code-golf  string  natural-language  code-golf  string  file-system  code-golf  math  array-manipulation  code-challenge  image-processing  compression  code-golf  math  number  sequence  code-golf  math  combinatorics  regular-expression  code-golf  sequence  pi  code-golf  ascii-art  code-golf  string  array-manipulation  sorting  code-golf  string  graph-theory  code-golf  string  code-golf  string  ascii-art  code-challenge  compression  code-golf  code-golf  math  sequence  number-theory  code-golf  maze  graph-theory  code-golf  math  sequence 

30
配列内の最大数と最小数を見つける
タスク タスクは非常に簡単です。整数と文字列のみを含む配列を指定すると、最大数と最小数を出力します。 テストケース Input: [1, 2, 3, 4, 5, 6, 7, 8] Output: 1, 8 Input: [5, 4, 2, 9, 1, 10, 5] Output: 1, 10 Input: [7, 8, 10, "Hello", 5, 5] Output: 5, 10 文字列内の数値は整数と見なされません。 Input: [1, 2, 3, 4, "5"] Output: 1, 4 整数が1つだけの場合、最大整数と最小整数の両方になります。 Input: [1] Output: …

30
賢い人のMira気楼
むかしむかし、Quoraでこの質問/回答を読んでいた FizzBu​​zzテストに合格できないコンピューターサイエンスの学位を持つプログラマーは本当にいますか このコードは明白な答えとして与えられます for i in range(1, 100): if i % 3 == 0 and i % 5 == 0: print "FizzBuzz" elif i % 3 == 0: print "Fizz" elif i % 5 == 0: print "Buzz" else: print i もちろん、FizzBu​​zzは死ぬまでゴルフにかけられましたが、それはこの質問の目的ではありません。あなたはコメントで、4の倍数の印刷「ジャズ」などの追加条件を簡単に追加できるので、この明白な答えは素晴らしいと誰かが言及していることがわかります(同意しません。このスキームを拡張するにはO(2 ** n )コード行。) あなたの挑戦は、仲間によって判断されるようにFizzJazzBuzzの最も美しいバージョンを書くことです。 投票者が考慮すべき事項: ドライ 除算/モジュラス演算の効率 Quoraに関する回答の多くはPythonを使用していましたが、ここではそのような言語の制限はありません。 …
29 popularity-contest  code-challenge  word  popularity-contest  string  grid  language-design  code-golf  source-layout  math  fastest-algorithm  assembly  code-golf  json  code-golf  arithmetic  array-manipulation  code-golf  ascii-art  code-golf  crossword  code-golf  string  restricted-complexity  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  decision-problem  balanced-string  syntax  code-golf  grid  puzzle-solver  hexagonal-grid  code-golf  math  number  sequence  code-golf  string  decision-problem  code-golf  cryptography  king-of-the-hill  code-challenge  fastest-code  code-golf  number  code-golf  code-golf  string  code-golf  cryptography  king-of-the-hill  java  code-golf  number-theory  base-conversion  code-golf  code-golf  array-manipulation  code-golf  array-manipulation  sorting  code-challenge  restricted-source  quine  code-golf  tips  python  king-of-the-hill  code-golf  source-layout  fractal  code-golf  tips  game  king-of-the-hill  path-finding  grid  code-golf  kolmogorov-complexity  natural-language  code-golf  tips  python  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  number  combinatorics  random  integer-partitions  code-golf  string  code-golf  vim  comment  code-golf  combinatorics  counting  code-challenge  rosetta-stone  code-golf  combinatorics  sequence  subsequence  code-golf  code-challenge  restricted-source  primes  printable-ascii  popularity-contest  graphical-output  image-processing 

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