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

古典的なアーケードゲームテトリスに関連する課題について。

6
ConwayのGame of Lifeでテトリスの実用的なゲームを構築する
ここに理論的な質問があります-どんな場合でも簡単な答えを与える余裕はなく、些細な質問でさえありません。 ConwayのGame of Lifeには、Game of Lifeが他のGame-of-Lifeルールシステムをシミュレートできるようにするメタピクセルなどの構造が存在します。さらに、Game of Lifeはチューリング完全であることが知られています。 あなたのタスクは、テトリスのゲームのプレイを可能にするConwayのライフゲームのルールを使用してセルラーオートマトンを構築することです。 プログラムは、割り込みを表すために特定の世代でオートマトンの状態を手動で変更することにより入力を受け取ります(例えば、ピースを左右に移動、ドロップ、回転、またはグリッドに配置する新しいピースをランダムに生成)。待機時間として特定の世代数を生成し、オートマトンのどこかに結果を表示します。表示される結果は、実際のテトリスグリッドに視覚的に似ている必要があります。 プログラムは、次の項目で順番にスコアが付けられます(低い基準が高い基準のタイブレーカーとして機能します)。 境界ボックスサイズ—与えられたソリューションを完全に含む最小の領域を持つ長方形のボックスが優先されます。 入力への小さな変更—割り込みに勝つために手動で調整する必要のある最小のセル(オートマトンの最悪の場合)。 最速の実行—シミュレーションで1ティック進む最小の世代が勝ちます。 初期の生細胞数—小さい数が勝ちます。 最初に投稿—早い投稿が優先されます。

9
これはどのテトロミノですか?
符号なし16ビット整数Nが与えられた場合、タスクは、4x4行列内にマッピングされたバイナリ表現がtetromino形状と一致するかどうかを判断し、一致する場合は、その形状を判断することです。 マトリックス Nの各ビットは、左から右、上から下に4x4マトリックス内でマッピングされ、最上位のものから始まります。 例: N = 17600 binary representation: 0100010011000000 matrix: [ [ 0, 1, 0, 0 ], [ 0, 1, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 0, 0 ] ] テトロミノの形 ベース形状 文字O、I、S、Z、L、J、およびTで識別される7つのテトロミノ形状があります。 ローテーションと翻訳 形状が4x4マトリックス内で平行移動および/または回転した場合でも、同じテトロミノの有効なバリエーションと見なされます。たとえば、17600、1136、2272、および1604はすべてJ tetrominoes として識別される必要があります。 ラップしないでください! ただし、形状は、マトリックスの境界をラップしたり、マトリックスの境界を超えてシフトしたりすることはできません。例えば、どちらも 568 も 688として識別されなければならないJの tetrominoes(ましてや他の任意の形状): …

7
(再)テトリスの実装
クラシックビデオゲームを再実装するという精神で、コミュニティにTetrisの最高の実装を作成してもらいたいと思います。 参考のため、テトリスの公式NESバージョンのスクリーンショット。 必要な機能 単一行のクリアよりも複数行のクリアに報いる合理的なスコアリングシステムが必要です。現在のスコアは常に表示されている必要があります。 表示される次のピースは、何らかの方法で示されなければなりません。 7つのテトロミノの分布は、ほぼ均等(つまり、疑似ランダムに選択)である必要があります。 ユーザーは、現在のピースを両方向に回転させ、降下を加速する能力を持っている必要があります。 ゲームが終了したら、ゲームが終了したことを明確に示す必要があります。 ソースコードは構造化され、理解しやすいものでなければなりません。 オプション機能 一定数のクリア後の落下速度の進行(つまり、難易度の増加)、および速度に比例したラインクリアごとのスコアの進行。 重力。ブロックを隙間に浮かせたままにすることができる「クラシック」重力を実装することを選択するか、ラインクリアによって元のテトロミノから分離されたブロックがオープンになる「フラッドフィル」重力を実装することを選択することができますギャップ。 名前が入力されたハイスコア。 ラインがクリアされた後、および/または新しいハイスコアを取得した後のアニメーション。 制限事項 使用されるライブラリ(jQuery、PyGameなど)は、自由に利用できる必要があります。 ソースコードのサイズは、空白とコメントを除いて、4096バイトを超えてはなりません。外部リソース(データファイル、画像など)がコード長に追加され、高スコアなどのために生成されるファイルは除外されます。 これはかなりarbitrary意的な制限であることを認識しています。私の主な目標は、既存の実装のコピー&ペーストをやめ、簡潔さと自己完結を促すことです。 受賞基準 このチャレンジは人気コンテストとして審査されます。つまり、最も多くの賛成票を獲得した作品が勝者として選ばれます。賛成する場合、ユーザーが上記の要件を十分に満たしていると感じるすべての投稿に賛成することをお勧めします。 勝者は、最初の有効なソリューションから2週間以内に選ばれます。さらに、この質問を受け取る投票数にほぼ比例して、賞金を勝者に付与します(10 * #votes最も近い50に切り上げます)。2週間の期間が終了した後に同点が生じた場合、競技期間は1週間延長されます。それでも同点の場合、私は最終投票権を留保します。 説明が必要な場合はお問い合わせください。最高の実装が勝つように!

4
テトリスの動きのリストを指定して、完了した行の数を返します
説明 各移動が以下で構成されるTetrisのわずかに簡略化されたバージョンを検討します。 ピースを時計回りに0〜3回回転させます 特定の列にピースを配置する 高速ドロップ 目標は、そのようなテトリスの動きのリストを与えられて、完了した行の数を決定することです。 完成した行は、標準のテトリス規則に従って、ピースがドロップされると削除されます。 プレイフィールド プレイフィールドの幅は10列です。そこにはいないゲームオーバー、何のプレイフィールドの構成を問題では、上記の操作を実行しないように、常に十分なスペースと時間があることを想定しています。プレイフィールドの高さはここではあまり重要ではありませんが、標準の22行を上限として使用できます。 テトロミノの形状 入出力 入力 3文字でエンコードされたテトリス移動のコンマ区切りリスト。最初の2文字は使用するTetrominoの形状を表し、最後の1文字はそれがドロップされた位置を表します。 テトロミノ:I、O、T、L、J、Z又はS、上記と同じ順序です。 時計回りの回転数:0〜3 列:0から9。これは、ピースの左上隅(x上の写真ででマークされている)が回転後に配置されている列です1 指定されたリスト内のすべての移動が有効であると想定されます。I07(水平方向のI配置が右に行き過ぎているなど)の無効なエントリをチェックする必要はありません。 1 移動の3番目の文字で指定された列にある限り、実際の回転アルゴリズムを実装するか、すべての異なる形状をハードコーディングxすることができます。 出力 完了した行の数。 例 O00,T24最初の位置O00,T24,S02,T01,L00,Z03,O07,L06,I05を生成し、2番目の位置を生成します。 したがって、次のシーケンスはテトリスを生成し、返す必要があり4ます。 O00,T24,S02,T01,L00,Z03,O07,L06,I05,I19 テストケース 1) "O00,T24,S02,T01,L00,Z03,O07,L06,I05,I19" -> 4 2) "S00,J03,L27,Z16,Z18,I10,T22,I01,I05,O01,L27,O05,S13" -> 5 3) "I01,T30,J18,L15,J37,I01,S15,L07,O03,O03,L00,Z00,T38,T01,S06,L18,L14" -> 4 4) "S14,T00,I13,I06,I05,I19,L20,J26,O07,Z14,Z10,Z12,O01,L27,L04,I03,S07,I01,T25,J23,J27,O01, I10,I10" -> 8 5) "O00,T24,L32,T16,L04,Z11,O06,L03,I18,J30,L23,Z07,I19,T05,T18,L30,I01,I01,I05,T02" -> 8 テストページ このJSFiddleを使用して、移動リストをテストできます。
37 code-golf  tetris 

18
Jumblers vs Rebuilders:Cotriding with Tetris Bricks
従来のテトリスでは、7つの異なるテトロミノレンガがあり、それぞれがその形状に似た文字で示されています。 # # # # # ## # # ### ## ## # ## ## ## # ## ## I O L J T Z S いくつかの正の整数WおよびHに対して、ソリッドW×H長方形を作成できるこれらのレンガの配置を検討します。たとえば、2つのI、1 L、1 J、2 T、および1 Sを使用すると、7×4の長方形は作られる: IIIITTT LIIIITJ LTTTSSJ LLTSSJJ 同じブリックは、異なる7×4パターンに再配置できます(移動および回転はできますが、反転はできません)。 IJJTLLI IJTTTLI IJSSTLI ISSTTTI ここで、最初の配置の代わりに長方形のコードブロックを使用することを検討してください。たとえばTetris、stdoutに出力されるPython 3のこの7×4ビット: p=print x='Tet' y='ris' p(x+y)# 最初のテトリスの配置によれば、その7つの「レンガ」は... x ' int …

3
テトリスブロックのプログラミング(文字通り)
ゲームTetrisには、7種類のレンガまたはTetr i minoesがあり、それらはすべて4つの正方形セグメントで作られているため、数学的にtetr o minoesとして知られています。 これらの名前は、I、J、L、O、S、T、およびZという名前で、おおよその形状に対応しています。90°の回転をカウントすると、合計19個のユニークな形状があります。 I I I I IIII J J JJ JJJ J JJ J J J JJJ L L LL L LLL LL L L LLL L OO OO SS SS S SS S TTT T T TT T T TTT T TT T ZZ ZZ …

6
ターザンのオリンピックつるスイングル​​ーチンを記録する
オリンピックのツルを振る人は、標準の木でルーチンを実行します。特に、標準ツリーにnは、0アップスルーのn-1頂点aと、各非ゼロ頂点をそのn % a下の頂点にリンクするエッジがあります。したがって、たとえば、標準ツリー5は次のようになります。 3 | 2 4 \ / 1 | 0 5を3で割ったときの剰余は2であるため、5を2で割ったときまたは4で割ったときの剰余は1であり、5を1で割ったときの剰余は0です。 今年、ターザンは頂点から始まり、頂点へn - 1とスイングし、頂点へn - 2と続きn - 3、最終的に頂点に降りるまで、新しいルーチンで金を守ります0。 ルーチンのスコアは、各スイング(降車を含む)のスコアの合計であり、スイングのスコアは、ツリー内の開始点と終了点の間の距離です。したがって、標準ツリー5のターザンのルーチンのスコアは6です。 から4までのスイングが33点(ダウン、アップ、アップ)を獲得し、 から3にスイングして21ポイント(ダウン)を獲得し、 から2までのスイングが11ポイント(ダウン)を獲得し、 から降車し1て01ポイント(下)を獲得します。 正の整数nを指定すると、標準ツリー上のターザンのルーチンのスコアを計算するプログラムまたは関数を記述しnます。サンプルの入力と出力: 1 -> 0 2 -> 1 3 -> 2 4 -> 6 5 -> 6 6 -> 12 7 -> 12 8 -> 18 …
32 code-golf  math  number  number-theory  code-golf  code-golf  restricted-source  programming-puzzle  css  code-golf  parsing  code-golf  random  encryption  code-golf  ascii-art  fractal  code-golf  math  code-golf  sorting  graph-theory  path-finding  permutations  code-golf  tetris  code-golf  card-games  code-golf  math  sequence  rational-numbers  code-golf  chess  code-golf  string  geometry  grid  code-golf  ascii-art  grid  code-golf  sequence  integer  code-golf  math  number-theory  packing  polyomino  code-golf  math  code-golf  string  quine  permutations  code-golf  math  code-golf  image-processing  optical-char-recognition  code-golf  string  kolmogorov-complexity  sequence  integer  code-golf  number  permutations  palindrome  code-golf  kolmogorov-complexity  code-golf  number  sequence  string  fewest-operations  code-golf  string  kolmogorov-complexity  sequence  primes  code-golf  string  ascii-art  code-golf  string  number  alphabet  code-golf  counting  code-golf  number  sequence  number-theory  primes  code-golf  subsequence  word-search 

5
テトリス!最終的な高さ(3日目)
大学のコードチャレンジコンテストからのチャレンジ これは実際には0日目ですが、昨日の挑戦はあまりにも簡単で、ここで別の質問をだましてしまう可能性があります。 テトリスは、80年代に人気を博したビデオゲームです。ボードに収まるさまざまな形状の一連のピースを配置して、可能な限りコンパクトに収まるようにします。 この問題では、それぞれが特定の位置にあり、変更できない特定の向きで落ちる一連のピースを想定します。ピースは落下するにつれて積み上げられ、完全な行は削除されません(元のゲームのように)。目的は、すべての破片が落ちた後、ボードの各列の最終的な高さを決定することです。 図に示すように、合計7つの異なる部分があります。 チャレンジ ピースのリストが与えられたら、すべてのピースが落ちた後、ボードからすべての列の高さを出力します ピースは、I、R、Pの3つの数字で構成されます。最初の数字Iは、ピースの識別子です(図と同じ順序で1〜7の数字)。2番目の数値Rは、ピースの回転です。0、90、180、または270の値を取ることができ、反時計回り方向のピースの回転角度を表します。3番目の数字Pは、ピースの位置を示します。ピースが占める左側の列を表します(これは1または0のインデックスになります。指定してください)。 例とテストケース(1インデックス) 与えられた [[1, 0, 1], [4, 0, 1], [5, 90, 4]] 出力 [3, 3, 1, 3, 2] 与えられた [[6, 270, 4], [1, 180, 5], [1, 90, 6], [7, 0, 4]] 出力 [0, 0, 0, 9, 9, 8, 3, 3] 与えられた[[3,0,1],[3,180,3]]出力[1,1,4,4,4] 与えられた[[2,180,1],[2,0,3]]出力[2,2,4,3,3] ノート …
19 code-golf  tetris 

1
テトリス戦略
あなたの仕事は、スコアとコードサイズのバランスが取れたテトリス戦略を実装することです。 このバージョンのゲームでは、tetrominoesが回転し、上から20行10列のグリッドにドロップされます。落下中は、回転または水平方向への移動はできません。いつものように、ドロップされたピースは、グリッドの底に達するか、さらに下向きの動きがすでに占有されている正方形との衝突を引き起こすと停止します。 ときにn水平線が完全に埋まる、それらは同時に崩壊、グリッドが補充されたn上部に空行、およびスコアが2だけインクリメントされるN -1点。nそれぞれ1,3,7,15ポイントだ= 1,2,3,4。線が消えると、一部のブロックが空中に浮いたままになることがあります(「重力連鎖反応」はありません)。 現在のピースを希望する場所に表示する余地がない場合、グリッドはクリアされ、現在のピースは無視され、ゲームは次のピースを現在のものとして続行します。そのためのペナルティはありません。 ピースタイプのストリームを読み、それらを回転させる方法とドロップする場所を決定する必要があります。あなたが作品を見ることができます:次のピース(一つだけ)のための先読みが許可されているi+1に応答する前にi、しかし、あなたはの運命を決定している必要がありますiを見て前にi+2。入力の最後の部分を超える先読みは利用できません。 Tetrominoタイプとその回転は、次の表に従ってエンコードされます。 type 0 1 2 3 4 5 6 O I Z J L S T ┌────┬────┬────┬────┬────┬────┬────┐ rotation 0 │## │# │## │ # │# │ ## │### │ │## │# │ ## │ # │# │## │ # │ │ │# │ …

30
消える要素
文字列Sとインデックスのリストを指定すると、その結果をの新しい値として使用しながら、の各インデックスの要素を削除してX変更SしSますS。 例えば、与えられたS = 'codegolf'とX = [1, 4, 4, 0, 2]、 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

1
ギャップとテトリスの破片の接続
入力または出力としてテトリスブロックのリストを指定するか、ピースが接続できる同じ高さレベルの2つのポイント間の最大ギャップを返すプログラムまたは関数を作成する必要があります。 7種類のテトリスピースは次のとおりです。 これらのピースを、それぞれ文字I、J、L、O、S、T、Zで参照し、形状を参照します。テトリスゲームのようにピースを回転させることはできますが、ミラーリングすることはできません。 私たちのタスクは、与えられたピースから直交接続された領域(側面が側面に接続されている)を作成することです。この領域は、同じ高さにある2つの単位正方形を(直交して)接続する必要があります。ブリッジできる2つの正方形の間の最大のギャップを見つける必要があります。 詳細な例 ピースLを使用すると、3つのギャップを接続できます。 L XLLLX ピースSを使用すると、2つのギャップを接続できます SS XSSX ピースS、S、Oを使用すると、7のギャップを接続できます(8のギャップを接続できないことに注意してください) S XSSOO SSX SOOSS 入力 大文字のI、J、L、O、S、T、およびZのみを含む使用可能なピースを表す文字列。すべての文字は完全なテトリスのピースを表します。 文字列内の文字はアルファベット順になります。 文字列は少なくとも1文字の長さになります。 出力 単一の正の整数、指定されたピースと接続可能な最大のギャップ。 例 入力=>出力 OSS => 7 LS => 5 LZ => 6 ZZZZ => 10 LLSSS => 14 IIJSSSTTZ => 28 IISSSSSS => 24 OOOSSSSSSSSSSSSTT => 45 IJLOSTZ => …
14 code-golf  tetris 

1
テトリスタングラム
前書き タングラムは、ブロックをさまざまな形に配置/適合させる古典的なパズルです。中国の七巧板から-文字通り「7つのスキルボード」を意味します。このアイデアを活用して、7つのテトロミノスのピースを使用してグリッドを埋めましょう。 チャレンジ 入力としてグリッド座標の配列を受け取り、指定された座標を除き、テトリスの破片で満たされた10 x 20の完成したグリッドを出力する関数またはプログラムを作成します。 ピースの分布を均一に保つようにして、スコアを最適化します。 基準 この座標のペーストビンを使用して、タスクを完了します。5組の座標があります。座標を書き込む形式は自由に変更できますが、値は変更しないでください。 データセット#2は解決できません-この場合、入力セルが埋められた状態でグリッドを出力するだけです(つまり、X穴のある場所)。 入力 グリッド座標は、グリッドの「穴」を表します。これらはテトロミノの部分を含むことができないセルです。 グリッド座標: (0,0), (1,0), (2,0), ... (9,0) (0,1), (1,1), (2,1), ... (9,1) . . . (0,19), (1,19), (2,19), ... (9,19) プログラミング言語の配列スタイルを使用して、座標を入力します。 Xまたはその他の印刷可能なASCIIでグリッドの穴を表します。 出力 幅10セル、高さ20セルの標準テトリスグリッドサイズを使用して、Tetrominoピースを使用してグリッドを完全かつ完全に埋めることができる場合にのみ、ソリューショングリッドを印刷します。 手紙で構成小品I、O、L、J、T、Z、Sとして、次のとおりです。 I I L J I OO L J T ZZ SS I OO LL …

3
可能なテトリスシーケンス
公式のTetrisアルゴリズムで一連のTetrisピースを生成できるかどうかを把握するためのコードを記述します。少ないバイトが勝ちます。 公式のテトリスゲームは、特別な方法で落下ピースのシーケンスを生成します。7つのピースIJLOSTZはランダムな順序でドロップされ、次に別のランダムな順列がドロップされます。 JTLOISZ STJOLIZ LISJOTZ ... この例には、連続したピースの実行が含まれています SZSTJOLIZLIS 7つのグループの境界を越えてカットすることに注意してください。 SZOTLZSOJSIT テトリスシーケンスの部分文字列にすることはできないため、公式のテトリスゲームでは決して見ることができません。 入力:空ではない文字列IJLOSTZ。 出力: A TruthyまたはFalsey 7文字の順列の連結の入力は公式テトリス乱数生成器によって生成することができるシーケンスの部分文字列であるかどうかの値、すなわち。 テストケース: 正しい: T JJ (unique breakdown: J J) JTJ (possible breakdown: JT J) LTOZIJS SZSTJOLIZLIS (possible breakdown: SZ STJOLIZ LIS) JTLOISZSTJOLIZLISJOTZ (possible breakdown: JTLOISZ STJOLIZ LISJOTZ) LIJZTSLIJZTS (unique breakdown: LIJZTS LIJZTS) 偽: SZOTLZSOJSIT ZZZ …

1
テトリスのゲームで最高の動きを見つける
私はテトリスが大好きですが、私はあまり得意ではありません。宇宙船が私の目の前で飛び立つのを一度だけ見たい!そして、コンピュータはすべてが非常に優れているので、唯一の可能な解決策は、私のためにそれを再生するプログラムを作成することです... テトロミノ(4つの正方形でできた形状)と競技場のマップが与えられたら、テトロミノを配置して、最大数の行をスコアし(最大数の行を完全にブロックで満たす)、最小数を作成します新しい穴(競技場の最上部「見る」ことができない空きスペース1)。 入力 入力には、ドロップするテトロミノを表す1行の文字が含まれ、その後にスペース()とプラス記号()の10 * 18グリッド2が続きます。+ キャラクターは、テトリスで見つかった7つの基本テトロミノのいずれかを表します。すべてのピースを90度回転できますが、反転させることはできません。すべてのテトロミノとその回転は次のとおりです。 # S = ## ## ## # # Z = ## ## ## # # ### ## L = # # # # ## # ### # ### ## J = # # # # ## # ### # # # T = …
10 code-golf  tetris 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.