タグ付けされた質問 「rubiks-cube」

ルービックキューブやポケットキューブなどのバリエーションに関する課題。


2
43クインティオンの順列
次のように、ルービックキューブをネットとして表すことができます(解決した場合)。 WWW WWW WWW GGGRRRBBBOOO GGGRRRBBBOOO GGGRRRBBBOOO YYY YYY YYY 各文字は対応する色を表します(W白、G緑など) 示された正確があることが43 、252 、003 、274 、489 、856 、00043、252、003、274、489、856、00043,252,003,274,489,856,000(〜434343京)異なる順列がルービックキューブがでできること。 あなたの仕事は、間の整数取ることである111と43 、252 、003 、274 、489 、856 、00043、252、003、274、489、856、00043,252,003,274,489,856,000上に示したように、対応する順列及び出力。順列の順序を選択することもできますが、使用可能なアルゴリズムを表示して、可能な入力ごとに一意の正しい順列を生成する必要があります。 無効な順列規則 から撮影 このページ ルービックキューブの中央の正方形は回転できないため、最初に、各3x3面の中心は同じである必要があります。キューブ全体を回転させて、顔の表示位置を変更できますが、これはキューブのネットには影響しません。 各順列には、その順列に到達するスワップの数のパリティに基づいてパリティがあると言うと、 各コーナーピースには3つの方向があります。正しい方向(0)、時計回り(1)、または反時計回り(2)にすることができます。角の向きの合計は常に3で割り切れるままです ルービックキューブの各法定回転は常に偶数のエッジを反転させるため、1つのピースだけが間違った方向を向くことはありません。 すべてのコーナーとエッジの順列を考慮すると、全体的なパリティは偶数である必要があります。つまり、各法定移動は常に偶数のスワップに相当するものを実行します(方向を無視) たとえば、次の3つのネットは無効な出力です。 WWW WWW WWW GGGWWWBBBOOO GGGRRRBBBOOO GGGRRRBBBOOO YYY YYY YYY (Too many whites/not enough reds) WRW WRW …

15
論理ゲートを手動で
基本的な論理ゲートをシミュレートするプログラムを作成します。 入力:スペースなどで区切られた、2つの1桁の2進数が続く、すべて大文字の単語OR 1 0。門OR、AND、NOR、NAND、XOR、およびXNOR必要とされています。 出力:入力された論理ゲートの出力には、1または0の2つの数値が与えられます。 例: AND 1 0なります0 XOR 0 1なり1 OR 1 1ます1 NAND 1 1なります0 これはcodegolfなので、最短のコードが優先されます。
13 code-golf  logic-gates  hashing  code-golf  code-golf  number  array-manipulation  integer  code-golf  string  unicode  text-processing  cops-and-robbers  boggle  cops-and-robbers  boggle  code-golf  ascii-art  code-golf  word-puzzle  king-of-the-hill  python  code-golf  sequence  kolmogorov-complexity  code-golf  source-layout  code-golf  string  kolmogorov-complexity  math  number  code-golf  date  code-golf  combinatorics  recursion  game  king-of-the-hill  javascript  code-golf  array-manipulation  code-golf  radiation-hardening  self-referential  code-golf  integer  code-golf  number  code-golf  set-theory  code-golf  sequence  code-golf  string  sorting  natural-language  code-golf  decision-problem  number-theory  primes  code-golf  code-golf  ascii-art  code-challenge  array-manipulation  sorting  rubiks-cube  regular-expression  code-golf  counting  file-system  recursion  code-golf  string  kolmogorov-complexity  color  code-golf  game  code-challenge  permutations  encode  restricted-time  decode  code-golf  math  decision-problem  matrix  integer  palindrome  code-golf  matrix  statistics  king-of-the-hill  king-of-the-hill  python  card-games  code-golf  string  natural-language  code-golf  sequence  number-theory 

11
立方体のキューブの面を合計する
Cubicallyキューブの面を手動で合計するのは退屈で時間がかかり、Cubically自体でコードを書くようなものです。 で最も効率的なcubifier、私は、立体的ソースにASCIIを変換することができ尋ねました。そこでの回答の1つは、キューブの初期化シーケンスを使用し、事前に初期化されたキューブの合計に基づいて結果のキューブを変更します。それ以来、このメソッドは多くのキュービック関連プログラムで使用されています。新しい初期化シーケンスをテストするとき、すべての面のすべての値を加算する必要があります。これには通常2〜3分かかります。 あなたの仕事は、このプロセスを自動化することです! 整数nと文字列の2つの入力を受け取りますc。これらは、コマンドライン引数、関数引数、標準入力、ファイル、またはそれらの任意の組み合わせから読み取ることができます。cなり立体的メモリキューブサイズのnインタプリタによってかなりプリントとして。 Cubicallyインタープリターは、プログラムの終了時にキューブをSTDERRにダンプし、見やすいように適切にフォーマットします。Cubicallyインタープリターで空のプログラムを実行し、デバッグセクションを開いて、初期化されたキューブのキューブダンプを確認します。引数4を追加して、4x4x4 5を表示したり、5x5x5などを表示したりします。 n3の場合、cこの形式に従います(整数は可変です)。 000 000 000 111222333444 111222333444 111222333444 555 555 555 スペース、改行、すべて。nが4の場合、次のcようになります(変数整数も使用): 0000 0000 0000 0000 1111222233334444 1111222233334444 1111222233334444 1111222233334444 5555 5555 5555 5555 など。 プログラムは6つの整数を出力します。最初の整数は、上面のすべての数値の合計になります。 000 000 top face 000 111222333444 left, front, right, and back faces, respectively 111222333444 111222333444 555 555 bottom face …

6
有理生成関数の係数を見つける
数値のシーケンスをべき級数の係数として記述する場合、そのべき級数はそのシーケンスの(通常の)生成関数(またはGf)と呼ばれます。つまり、ある関数F(x)と一連の整数a(n)について次のようになっている場合: a(0) + a(1)x + a(2)x^2 + a(3)x^3 + a(4)x^4 + ... = F(x) 次にF(x)はの生成関数ですa。たとえば、幾何級数は次のことを示しています。 1 + x + x^2 + x^3 + x^4 + ... = 1/(1-x) したがって、の生成関数は1, 1, 1, ...です1/(1-x)。上記の式の両側を微分して乗算するxと、次の等式が得られます。 x + 2x^2 + 3x^3 + 4x^4 + ... = x/(1-x)^2 したがって、の生成関数は1, 2, 3, ...ですx/(1-x)^2。関数の生成は非常に強力なツールであり、それらを使用して多くの便利なことができます。簡単な紹介はここにありますが、本当に徹底的な説明のために、素晴らしい本生成機能があります。 この課題では、入力として有理関数(整数係数を持つ2つの多項式の商)を、最初に分子、次に分母の2つの整数係数の配列として受け取ります。たとえば、関数f(x) = x …
12 code-golf  math  integer  polynomials  code-golf  math  abstract-algebra  restricted-time  code-golf  math  primes  code-golf  math  number  arithmetic  code-golf  quine  code-golf  number  sequence  code-golf  string  number  code-golf  array-manipulation  code-golf  number  code-golf  string  code-golf  arithmetic  code-golf  string  array-manipulation  rubiks-cube  code-golf  math  number  code-golf  tips  bash  code-golf  ascii-art  music  code-golf  arithmetic  code-golf  math  number  arithmetic  integer  code-golf  number  array-manipulation  code-golf  geometry  grid  set-partitions  code-golf  math  number  code-golf  combinatorics  code-golf  regular-expression  code-golf  permutations  code-golf  ascii-art  code-golf  number  array-manipulation  matrix  code-golf  kolmogorov-complexity  compile-time  cops-and-robbers  polyglot  cops-and-robbers  polyglot  code-golf  string  code-golf  string  ascii-art  matrix  animation  code-golf  ascii-art  code-golf  string  balanced-string  code-golf  integer  integer-partitions  expression-building 

1
整数操作によりIEEE 754 64ビットのバイナリ浮動小数点数を実装します
(とりあえず質問「C」にタグを付けましたが、共用体をサポートする別の言語を知っている場合は、それも使用できます。) あなたの仕事は+ - * /、次の構造体の4つの標準的な数学演算子を作成することです。 union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 演算自体は整数部分のみを操作またはアクセスするため(演算中にdoubleと比較することはありません)、結果はまったく同じです(またはのような非数値の結果の場合は機能的に同等ですNaN)対応する数学演算がdouble代わりに直接適用されたかのように。 操作する整数部分を選択できます。おそらく、異なる演算子間で異なる部分を使用することもできます。(ユニオンのフィールドのいずれかから「unsigned」を削除することもできますが、それを実行するかどうかはわかりません。) スコアは、4つの演算子のそれぞれの文字のコードの長さの合計です。最低スコアが勝ちます。 IEEE 754規格に慣れていない私たちの人のために、ここではウィキペディアにそれについての記事です。 編集: 03-06 08:47 intfloat構造体にコンストラクタを追加しました。double /などを手動で設定するのではなく、テストに使用できます。

2
Cubically Cubeを実装する
Cubicallyは、問題の非常に特定のサブセットに対してゴルフのような短い答えを作成できる、かなり新しい難解な言語です。3x3ルービックキューブの形でメモリを格納するという点で独特であり、計算はほとんどの言語よりもはるかに簡単です。Cubicallyでは、プログラマーは面に格納された値を操作するために内部の立方体を回転させ、それらの値を計算に使用する必要があります。計算は、「ノートパッド」と呼ばれる架空の面に保存されている単一の32ビット整数で実行されます。さらに、Cubicallyはユーザー入力を要求し、それを単一の整数値のみで構成される入力バッファーに格納できます。 キューブ 立方体の面は、U p、D own、L eft、R ight、F ront、およびB ackです。 UUU UUU UUU LLLFFFRRRBBB LLLFFFRRRBBB LLLFFFRRRBBB DDD DDD DDD プログラムが開始すると、その面の各正方形がその面の0ベースのインデックスと等しくなるようにキューブが初期化されます。 000 000 000 111222333444 111222333444 111222333444 555 555 555 面が回転するときは常に、常に時計回りに回転します。 Cubically> F1 000 000 111 115222033444 115222033444 115222033444 333 555 555 面の値は、その面のすべての正方形の合計として定義されます。たとえば、上のキューブでは、faceの値0は3です。 構文 コマンドを実行するには、まずコマンドをメモリにロードし、次に引数をコマンドに渡してコマンドを実行します。たとえば、コマンドF1はコマンドFをメモリにロードし、引数を指定して呼び出します1。さらに、F13コマンドFをメモリにロード1してから、引数を指定して呼び出し、次に引数を指定して呼び出します3。数字以外の文字はコマンドとして扱われ、数字は引数として扱われます。 あなたのタスク あなたの仕事は、選択した言語でCubicallyの内部メモリキューブを実装することです。コードは、言語の非常に小さなサブセットを実行できる必要があります。 コマンド R -立方体の右側面を指定された回数時計回りに回転させます。 L -立方体の左面を指定された回数時計回りに回転させます。 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.