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

順列は、オブジェクトのリストの特定の順序です。順列でタグ付けされた問題には、通常、テキストのアナグラムを含む順列の検索または生成が含まれます。

6
順列番号付け
チャレンジ n個の整数の特定のセットについて、辞書式インデックスを出力するプログラムを記述します。 ルール 入力は、スペースで区切られた一意の非負の整数のセットでなければなりません。 順列の辞書式インデックス(範囲0〜n!-1を含む)を出力する必要があります。 順列ライブラリまたは順列ビルトインは使用できません。 インデックスの検索に役立つように、入力の順列のセットまたは順列のサブセットを生成することはできません。 また、指定された順列を次または前の(辞書式に)順列にインクリメントまたはデクリメントすることもできません。 階乗を使用せずにこれを完了する方法が見つかった場合、ボーナスポイント(-10バイト)。 n = 100の場合、実行時間は1分未満である必要があります バイト数による最短コードの勝ち 火曜日に選ばれた勝者(2014年7月22日) 順列の詳細 http://www.monkeyphysics.com/articles/read/26/numbering_permutations.html 順列グループ操作 http://lin-ear-th-inking.blogspot.com/2012/11/enumerating-permutations-using.html 例 0 1 2 --> 0 0 2 1 --> 1 1 0 2 --> 2 1 2 0 --> 3 2 0 1 --> 4 2 1 0 --> 5 0 …

4
先行および苦しみ番号
前書き: オランダ語では、「ライデン」と「ライデン」である主導と苦しみの単語は、同じように発音されます。1つは「short ei」で、もう1つは「long ij」で書かれています。これは、オランダ人が言うように、「ei」と「ij」の両方が発音されます[ɛi]。 チャレンジ: 数値のリストを与えられて、どれが(もしあれば)先行しているか、どれが(もしあれば)苦しんでいるかを判断します。 主な数値は次のとおりです。 正の数 4桁以上 価値に関してリストの上位50%にある 3桁目が2桁目で置き換えられ、2桁目が0で埋められている場合(つまり、1234になる1024)、値の面でリストの上位50%にあります。 苦しんでいる数は: 負の数 4桁以上 価値の点でリストの最低50%にある 3桁目が2桁目で置き換えられ、2桁目が0で埋められている(つまり、-4321になる-4031)場合、値の点でリストの最下位50%にあります。 例: 入力:[5827, 281993, 3918, 3854, -32781, -2739, 37819, 0, 37298, -389] 出力:リーディング:[5827, 281993, 37819, 37298]; 苦しみ:[-32781, -2739] 説明: 数値をソートして2つに分割すると、次のようになります。 [[-32781, -2739, -389, 0, 3798], [3854, 3918, 5827, 37819, 281993]] 少なくとも4桁の負の数は2つしかありません[-32781, -2739]。上記のように数字を変更しても、それらの位置は変更されないため、どちらも数字に悩まされています。 最も大きい半分の場合、すべての数値は少なくとも4桁です:[3854, 3918, 5827, …

3
アナグラムを解く
参照:Granma loves Ana 小文字のASCII文字列が与えられます。この辞書ファイル(更新済み)を使用して、アナグラムを解くことです。アナグラムを解くには、改行で区切られた入力文字列の各文字を使用して形成できるすべての単語または単語のグループを出力する必要があります。同じ単語の異なる順序でのグループは一意ではないため、個別に出力しないでください。ただし、単語の順序は関係ありません。出力ソリューションの順序も重要ではありません。入力が単語を形成できない場合、何も出力しません。 いくつかの有用なテストケース: Input: viinlg Output: living Input: fceodglo Output: code golf Input: flogflog Output: golf golf Input: ahwhygi Output: highway high way Input: bbbbbb Output: ルール/警告: 辞書リストには、好きな方法でアクセスできます。コマンドライン引数、標準入力、ファイルからの読み取り、またはインターネットからの読み取りはすべて受け入れられます。 入力は小文字のASCII文字のみで構成されます。特定の場合に結果を出力する必要はありません。 既に有効な単語を形成する文字列は与えられません(ただし、などの複数の単語を形成する文字列が与えられる場合がありますbluehouse)。 末尾の改行は許可されますが、必須ではありません。 標準の抜け穴が適用されます。 これはcode-golfです。バイト単位の最短コードが優先されます。幸運を!

7
親文字列内のアナグラムを検出する
親文字列とクエリ文字列の2つの文字列が与えられた場合、タスクはクエリ文字列の回数、またはクエリ文字列のアナグラムを決定することです。大文字と小文字を区別した検索で、親文字列に表示されます。 行動の例 入力1 AdnBndAndBdaBn dAn 出力1 4 説明 サブストリングは以下の太字で強調表示されています。 Adn BndAndBdaBn AdnB ndA ndBdaBn AdnBn dAn dBdaBn AdnBnd および BdaBn 検索はすべての検索で大文字と小文字を区別する必要があることに注意してください。 入力2 AbrAcadAbRa cAda 出力2 2 これは、標準のASCIIでのみ機能する必要があります。これはコードゴルフであるため、最短の文字数で承認されます。また、ゴルフ版ではなく、ゴルフ版ではないコードを投稿してください。

7
9erilous 9ermutations
注:これは、guest271314の順列の質問をリサイクルする試みです。 ユニークな数字が昇順の10進数の辞書式に並べ替えられた順列の違いを見つけると、興味深いパターンが形成されます。たとえば、123順列があります: 123 132 213 231 312 321 これらの違いを見つけると、シーケンスが得られます 9 81 18 81 9 これらはすべて9で割り切れる(10進数の数字の合計のため)、また回文構造です。 特に、次の番号を使用すると1234、シーケンスが得られます 9 81 18 81 9 702 9 171 27 72 18 693 18 72 27 171 9 702 9 81 18 81 9 693693693あたりの回文構造を維持しながら、前のシーケンスを拡張します。10シーケンスの長さはn !− 1ん!−1n!-1が、それ以上の数を使い始めても、このパターンは常に成り立ちます。- 1のためのんんn数。メモは、上記使用の数字は、その0 to 9によって、我々は異なった塩基に変化しない、我々は、単に多重数10バツ10バツ10^x、たとえば[ 1 、12 、11 ]10= 1 …

4
フラット化されたスパイラル順列インデックス
環境 n最初のn^2(つまりn2乗された)正の整数を含む列と行をもつ正方行列を考えます。ここで、nが奇数。行列の要素は、整数1〜n^2が、中心から始まり、最初は左に移動する反時計回りのらせん状に順次配置されるように配置されます。これらの行列を呼び出すM(n) ために n=1、この単純に1つの要素行列を与えますM(1)=[[1]]。 M(3) 行列です 9 8 7 2 1 6 3 4 5 M(5) 行列です 25 24 23 22 21 10 9 8 7 20 11 2 1 6 19 12 3 4 5 18 13 14 15 16 17 そして M(7)行列です 49 48 47 46 45 44 …

9
ストリングをシャッフルする-警官
強盗の投稿 リフルシャッフルは、デッキ2つのおおよそ等しいセクションに分割され、切片を小グループでお互いにriffledされているカードをシャッフルする方法です。これは文字列をシャッフルする方法です: 文字列を等しいセクションに分割します。 文字列を逆にし、各文字列の先頭から始めます。 1から現在の文字列に残っている文字数までのランダムな長さのランを最終的な文字列に入れます 次に、これらの文字を文字列から削除します。 残りの半分について、両方の半分が空になるまで繰り返します。 例 "Hello World!" Output string = "" "Hello ", "World!" "" "Hell", "World!" " o" "Hell", "World" " o!" "Hel", "World" " o!l" "Hel", "Wo" " o!ldlr" "H", "Wo" " o!ldlrle" "H", "" " o!ldlrleoW" "", "" " o!ldlrleoWH" からの最終製品はHello World!可能性がo!ldlrleoWHあり、それが出力されます。 警官 あなたの仕事は、文字列をシャッフルするプログラム(または関数)を作成することです。入力された文字列が奇数長である場合は、それを+1と+0(abc …

17
チペオエニグママシン(強盗)
警官のポストについては、Cheepo Enigmaマシン(警官) 強盗の提出は、警官のコードの出力を受け入れ、その警官のコードによって提供されるすべての出力の入力を返すプログラム/関数で構成されます。(言い換えれば、逆関数を書く必要があります) ハッシュ化または暗号化のみを目的とするビルトインは使用できません。 入出力フォーマット 8ビット(0または1)、または1〜256、0〜255、または-128〜127の範囲の10進整数。標準I / OまたはファイルI / Oを使用できます。関数は値を出力として返すこともできます。入力と出力は同じ範囲(たとえば、バイナリ、1〜256、0〜255、または-128〜127)に属している必要があります。これは、警官が使用する範囲と同じでなければなりません。 得点 警官のバイト数とバイト数の比率。最も高いスコアが勝ちます。 参照用にあなた自身の警官コードに対する強盗の試みを提出することができます。(もちろん、このコードは当選の対象ではありません) 通知 対応する警官の回答を編集して、新しいバイト数と対応する比率を含めてください。

14
クインアナグラム!(強盗のスレッド)
これは強盗のスレッドです。警官のスレッドについては、ここをクリックしてください。 警官の任務 警官のスレッドについては、ここをクリックしてください。 強盗のタスク 警官のスレッドでひびの入っていない提出物を見つけます。(提出物は一度だけ解読できます。) コードを解読して、動作するクインを見つけます。 強盗のスレッドに回答を投稿します。言語、バイト数、スクランブルコードを投稿したユーザー、その回答へのリンク、およびスクランブルされていないコードを含めます。 強盗の提出例を以下に示します。 Python、29バイト、Oliver _='_=%r;print _%%_';print _%_ 得点 クラックが最も多いユーザーがこのセクションの勝者になります。

1
拡張可能な列車交換問題
拡張列車交換問題 パート1:通常の列車交換問題 1996年のCCC(カナダコンピューティングコンペティション)では、最初のステージ2の問題は列車交換問題でした。ここのリンクにアクセスできます。基本的に、番号付きの列車の束があり、それらを順番に取得するために必要な列車の入れ替えの数を調べたい場合、各列車の入れ替え操作では、隣接する2つの列車を入れ替えることができます。車両はどちらの方向にも走ることができるので、入れ替えたときに車両が反対方向に向いていることを誰も気にしません。これはとても簡単です。あなたがする必要があるのは: それをバブルソートするためのステップ数を見つけます。隣接する要素の交換のみを行うことができる場合、これは最も効率的なソートアルゴリズムです。 だから、もっと難しいものを作りました。 パート2:この課題の仕組み 基本的に、隣接する列車だけでなく、交換することができます。回転プラットフォームが長いと、複数の列車の位置を入れ替えることができます。たとえば、長さが4の回転プラットフォームでは、内側と外側のペアを同時に交換できるため、に1 2 3 4なり4 3 2 1ます。さまざまな回転プラットフォームサイズの例を以下に示します。 Length 2: 1 2 3 4 5 --- 1 3 2 4 5 Length 3: 1 2 3 4 5 ----- 1 4 3 2 5 Length 4: 1 2 3 4 5 ------- 4 3 2 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.