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

グリッドに関する課題。

21
XORテーブルを作成する
前書き XORは、排他的論理和を実装するデジタルロジックゲートです。ほとんどの場合、これはと表示され^ます。バイナリの4つの可能な結果: 0 ^ 0 = 0 0 ^ 1 = 1 1 ^ 0 = 1 1 ^ 1 = 0 これは、2を法とする2進法の加算とも見なすことができます。小数では、我々はバイナリに小数を変換する必要がある35 = 100011と25 = 11001.TO XOR値を計算し、私たちは互いの上にそれらを配置します。 100011 11001 ^ -------- 111010 = 58 in decimal タスク:1より大きい整数値Nを指定すると、サイズN + 1のXORテーブルを出力します。たとえば、N = 5: 0 1 2 3 4 5 1 0 …

30
ボックスを生成します!
あなたの仕事は、与えられた入力に関して任意の1つのASCII文字を使用してボックスを生成することです。 テストケース 1 1 --> ===== = = ===== 1 2 --> ========= = = = ========= 2 1 --> ===== = = ===== = = ===== 2 2 --> ========= = = = ========= = = = ========= 2 5 --> ===================== = = = = = = ===================== …

1
グリッド充填蛇行を完了する
グリッド塗りつぶし蛇行は、正方形のグリッドのすべてのセルを少なくとも1訪問し、隣接するセル間のエッジを2回以上渡らず、それ自体を渡さない閉じたパスです。例えば:N×NN×NN \times N グリッドが満たされると、次の8つのタイルのいずれかでグリッドの各セルを表すことができます。 このように番号を付けると、上記の蛇行のタイルはこのマトリックスで表すことができます。 5 6 5 6 4 8 3 2 5 7 6 2 4 3 4 3 あなたの仕事は、タイルの不完全なセットを与えられたグリッド充填蛇行を完了することです。たとえば、不完全な蛇行: ... 0不足しているタイルに対してsを使用して表すことができます: 5 0 0 0 6 0 0 7 0 0 0 0 0 0 3 2 4 0 0 0 0 0 3 0 0 ...このように完了することができます: …

9
グリッドを三角形に分割する
ゴール この課題の目標は、次の機能を生成することです n、n X 1グリッドを三角形に分割する方法の数を計算する。三角形のすべての頂点がグリッドポイント上にあります。 例 たとえば、2 x 1グリッドを分割するには14の方法があるためf(2) = 14、次のパーティションを使用して して、それぞれ2、2、2、2、4、および2つの異なる方向に分割します。 得点 これはcode-golfなので、最短のコードが優先されます。

8
美しい模様の引き出し(小さな立方体が含まれています)
美しい模様の引き出し おはようございますPPCG! 先日、私がStack Overflowで誰かを助けようとしたとき、彼の問題の一部がこの挑戦のアイデアを与えてくれました。 まず、次の形状を確認します。 ここで、すべての黒の数字はシェイプ内のポイントのインデックスであり、すべての濃い青の数字はポイント間のリンクのインデックスです。 ここで、0x00000〜0xFFFFFの16進数を指定すると、コンソールで文字スペースと「■」のみを使用して図形を描画する必要があります(文字「o」を使用しても問題ありません)。 16進数が入力され、形状が出力される例を次に示します。 0xE0C25 : ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ 0xC1043 : ■ ■ ■ ■ ■ ■ …

5
ASCIIアートの非交差パスを生成する
2つの整数フィールドのサイズを表す入力、所与xとy、出力フィールドを介してパス。 の出力例5, 4: # # # ### ### # フィールド全体は5 x 4で、フィールドを横切るハッシュマークで構成されるパスがあります。 パスは常に左上隅から始まり、右下に行く必要があります。プログラムを実行するたびに、パス全体をランダム化する必要があります。有効なパスはすべて、可能な出力である必要があります。 パスのルールは次のとおりです。 ハッシュマークで作られた すべてのハッシュは、他の2つのハッシュにのみ接続されます(つまり、パスはそれ自体と交差または実行されません) ハッシュ以外のスペースは他の文字で埋めることができますが、一貫している必要があります(つまり、すべてのスペース、すべてのピリオドなど)。 例: 2, 2 ## # 3, 4 ## ## # # 5, 5 ##### # # # # 6, 5 ## ### # # # ## # # # ## # ### # …

4
私はしばらくの間アルファベット狩りをしてきました
ええ、最近、「アルファベット」の課題がたくさんあります。(1 2 3 4 5)。私は良いチャレンジが大好きで、それらのチャレンジはとても楽しかったですが、今はペースを変える時だと思います。将来、このような課題を排除する必要があります。自動化の時間です! あなたは私のために、そして自動化のために(そして栄光のために!)いくつかのアルファベットを見つけるでしょう。アルファベットはトリッキーで、自分自身を隠すのが好きです。[引用が必要]次の要素を考慮する必要があります。 アルファベットは大文字でも小文字でもかまいません(両方ではありません)。だから、あなたが探しする必要があるABCDEFGHIJKLMNOPQRSTUVWXYZとabcdefghijklmnopqrstuvwxyz、ではなくAbCdeFGhIJkLmNOpQRsTuvwxyZ。つまり、完全に1つのケースで構成されているアルファベットのみを探します。 アルファベットは移動できます。常にで始まるとは限りませんAが、代わりにGまたはで始まる場合がありUます。だからあなたはのようなものを探す必要がありますOPQRSTUVWXYZABCDEFGHIJKLMN。 アルファベットは常に前方に読むとは限りません。また、後方、上方、下方に読むことができます。たとえば、ZYXWVUTSRQPONMLKJIHGFEDCBA有効なアルファベットでもあります。 アルファベットを含む文字列の例を次に示します。 JIHGFEDCBAZYXWVUTSRQPONMLK これは、逆向きのシフトされたアルファベットです。 JIHGFEDCBAZYXWVUTSRQPONMLK <--------|<--------------- これにはアルファベットも含まれます。 F G H I J K L M N O P Q R S T U V W X Y Z A B C D E それは下向きのアルファベットです: F | G | H | I | …
18 code-golf  string  grid 

4
最小限の単語検索
先週、私たちは英語の上位10,000語を使用して最短の1次元文字列を作成することに取り組みました。さあ、同じチャレンジを2Dで試してみましょう! あなたがする必要があるのは、上記のすべての単語を取得し、それらを可能な限り小さな長方形に入れて、重複を可能にすることです。たとえば、単語がの場合["ape","pen","ab","be","pa"]、可能な長方形は次のようになります。 .b.. apen 上記の長方形のスコアは5です。 ルール: 単語内の複数の文字の重複は許可されています 言葉は8つの方向のいずれかに行くことができます 言葉は折り返せない 空の場所には任意の文字を使用できます これらの英語の上位10,000語を含む単語検索を作成する必要があります(Googleによる)。 スコアは、単語検索の文字数に等しくなります(未使用の文字を除く)。同点の場合、または提出が最適であることが証明された場合、最初に投稿された提出が優先されます。

15
g l f a t a n 2
時には、デカルト座標(x,y)を極座標に変換するのは本当に大変です(r,phi)。r = sqrt(x^2+y^2)非常に簡単に計算できますが、角度を計算する際にケースの区別が必要になることがよくあります。phiこれarcsinはarccos、arctanおよび他のすべての三角関数が、それぞれが円の半分のみに広がる共領域を持つためです。 多くの言語には、直交座標を極座標に変換するための組み込みatan2機能があります。または、少なくとも(x,y)角度を計算する関数がありますphi。 仕事 あなたのタスクは、2つ(浮動小数点、両方ではないゼロ)デカルト座標を取るプログラム/関数を記述することで(x,y)、対応する極角出力するphi、phiと(度、ラジアン、またはグレードでなければならないグレード Iは、平均グラジアン 1であります/ 400の完全な円)、あなたにとってより便利な方。 角度は正の方向で測定され、の角度はゼロです(1,0)。 詳細 あなたは、角度計算ビルトインを使用することはできませんphiを含む2点の座標、与えられたatan2、rect2polar、argOfComplexNumberおよび同様の機能を。ただし、通常の三角関数とその逆関数を使用できます。これらの関数は1つの引数のみを取ります。単位記号はオプションです。 半径はr非負でなければならない、とphiの範囲でなければなりません[-360°, 360°](それはあなたの出力かどうかは関係ありません270°か-90°)。 例 Input Output (1,1) 45° (0,3) 90° (-1,1) 135° (-5,0) 180° (-2,-2) 225° (0,-1.5) 270° (4,-5) 308.66°
18 code-golf  math  geometry  trigonometry  code-golf  number-theory  fibonacci  code-golf  math  sequence  fibonacci  code-golf  string  code-golf  math  graphical-output  geometry  code-golf  string  code-golf  math  geometry  code-golf  math  bitwise  number  popularity-contest  graphical-output  image-processing  fractal  code-golf  number-theory  code-golf  date  multi-threading  code-golf  math  code-golf  math  number  sequence  code-golf  math  number  sequence  arithmetic  code-golf  decision-problem  logic-gates  code-golf  decision-problem  balanced-string  code-golf  math  arithmetic  combinatorics  code-golf  expression-building  code-golf  physics  code-golf  abstract-algebra  code-golf  number  arithmetic  integer  code-golf  ascii-art  number  code-golf  number-theory  primes  code-golf  arithmetic  grid  code-golf  code-golf  sequence  code-golf  kolmogorov-complexity  compression  code-golf  math  number  arithmetic  array-manipulation  code-golf  primes  hexagonal-grid  complex-numbers  code-golf  number  counting  code-golf  math  number  arithmetic 

3
フィールドで最高のスコア
前書き フィールドを、文字とのみで満たされた長方形-とし[0-9]ます。フィールドの例は次のとおりです。 11-011123 111-010-- 0010---01 111-01234 このフィールドは、3つの小さな領域に分割されていることがわかります。 より小さなエリアのスコアを計算するには、すべての数値を加算します。例えば: 11 111 0010 111 1 + 1 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 1 + 1 + 1 = 9 このエリアの合計スコアは9です。次に、2番目の領域についても同じことを行います。 011123 010 0 + 1 + 1 + 1 + 2 + …
18 code-golf  number  grid 

2
針で干し草の山を見つける
干し草の山で針を見つけるのにひねりを加えるには、ちょうど 1本の 針を含む最大の連続した干し草を見つける必要があります。対角線上のセルは接続できず、左/右/上/下のみ接続できることに注意してください。 入力 'N'(針)および'#'(干し草)文字の配列(またはユーザー入力行の数、選択)。入力にはこれらの2文字のみが含まれ、それぞれ少なくとも1文字が含まれている必要があります。例えば: N#N#N #NN## ###N# N##N# 出力 有効な最大の干し草のサイズ。この例では、11を出力します(11個の干し草と1本の針があります)。 # # ## ###N# ## # これはcode-golfなので、最短のコードが優先されます。標準的な抜け穴の制限が適用されます。 テストケース 左に入力、右に可能な最大の干し草の山 ケース1:4 N## ## NN# # #NN N #N# # ケース2:7 ### ### N#N # NNN N ### ### ケース3:10 N###N ### #N#N# #N# #N#N# # # N###N ### ケース4:10 N#N#N …

1
単語の雲を転置する
バックグラウンド 次のように、きれいな単語雲を作りたいと思いました。 these are words floating (x,y)各単語の最初の文字の-座標を計算し、それらを単語クラウドジェネレーターにプラグインして、その仕事をさせました。ただし、誤って(y,x)-coordinatesを使用したため、結果は次のようになります。 these floating words are 私は座標を再計算するのが面倒なので、私のために単語の雲を転置する必要があります。 入力 入力は、小文字のASCII文字とスペースの長方形のグリッドです。つまり、すべての行に同じ長さになるようにスペースが埋め込まれます。入力は、複数行の文字列または文字列の配列として取得できます。 単語は、文字の水平セグメントであり、その位置がある(x,y)、その左端の文字、グリッドの存在の左上隅の-coordinates (0,0)。常に少なくとも1つの単語があり、スペースの末尾の行または列はありません。ただし、スペースの先頭の行または列が存在する場合があります。 出力 出力は、位置(x,y)を持つすべての単語をposition に移動することにより取得される、文字の別の長方形グリッドです(y,x)。出力には、スペースの余分な末尾の行または列を含めることはできません。先行する行と列は保持する必要があり、出力は長方形でなければなりません。 この変換は、重複する単語を作成せず、複数の単語を1つにマージしないと仮定できます。これは、出力でプログラムを実行すると元の入力が生成されることを意味します。 ルールとスコアリング 完全なプログラムまたは関数を作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース わかりやすくするため(およびStack Exchangeはスペースのみの行を嫌うため)、すべての行はパイプ文字で終わり|ます。 これらは実際の入力または出力の一部ではないため、削除する必要があります。各出力でプログラムを実行すると、対応する入力も生成されることに注意してください。 Input: oneword| Output: oneword| Input: spaces| Output: | | spaces| Input: | row| Output: row| Input: these are| words | | floating | Output: …
18 code-golf  string  grid 

2
都市:視界
私は無限の2次元都市の位置(0、0)にいます。これは各格子点を中心とするブロックに完全に分割されており、その一部には建物が含まれています。特定のポイント(x、y)にある建物は、(x-.5、y-.5)および (x + .5、y + .5)に反対側の角を持つ正方形全体を占めます。建物は、(0、0)から他の建物と交差しない建物内のポイントまでの線分がある場合にのみ表示されます。 たとえば、私()は次の都市に@6つの建物(*)を見ることができます。 * * * *@ x** * y (-1、-1)xでマークされた建物は、隣接する2つによって遮られているため表示されません。または(1、-1)の建物の端で遮られているため、(3、-2)でマークされたもの。y 入力 複数行の文字列、または行のリスト。オプションで長方形にスペースを埋めます。以下のみが含まれます。 単一@(私の位置) スペース *、建物を表します。 常に少なくとも1つの建物があるため、少なくとも1つの目に見える建物があります。 出力 目に見える建物の数。 テストケース *@ 1 * ******* @ * 7 ***** **@** ***** 4 * ** @ ** 2 * * * * @ 4 @ * *** 1 …

2
チェーンワードクロスワードスタイル
チャレンジ 単語のリストが与えられた場合、["Programming", "Puzzles", "Code", "Golf"]クロスワードスタイルの単語を出力します。 プログラミング あなたは z z G l コード ls f アルゴリズム 指定された順序でリストを処理する必要があります。 単語は、水平方向から交互に印刷されます。 2つの単語は、2番目の単語にも存在する最初の単語の最初の文字で交差します。この文字がseond語で複数回出現する場合は、最初の文字を取ります。 例:に ["no", "on"]なります: o n o そしてありません n o n その他の注意事項 リスト内の隣接する単語には、少なくとも1つの共通の文字があります。["Hi", "there"]有効な入力ではありません。 言葉が衝突することはありません。最初の可能な交差点で単語を印刷するのに十分なスペースが常にあります。["Hello", "there", "end", "hello"]有効な入力ではありません マッチングでは大文字と小文字が区別されます。 単語は左および上に展開できます。 水平方向の単語の文字は、1つのスペースで区切る必要があります。 入力リストには少なくとも2つの単語が含まれます。 すべての単語が正規表現に一致します。 [A-Za-z]+ 単語が正しく連鎖している限り、末尾の空白または改行を必要な数だけ印刷できます。 一方、先頭に空白を追加することはできません。一番左に浮かぶ単語の先頭のスペースはゼロで、他の行の先頭スペースは非常に多いため、すべてが正しく並んでいます。 プログラムは、任意の量の単語を処理できる必要があります ルール 機能または完全なプログラムが許可されます。 入出力のデフォルト規則。 標準の抜け穴が適用されます。 これはcode-golfなので、バイト数が最も少なくなります。Tiebreakerは以前の提出です。 テストケース …

3
真珠のネックレスを張る
概要 Pearls(またはMasyu)は、グリッド上でプレイされるロジックゲームです。黒と白の真珠がグリッドに配置されています。オブジェクトは、形成することです単一の閉じたループ直線セグメントと直角のみを使用して、各真珠を通過ことです。 ループが真珠とどのように相互作用するかを管理するいくつかのルールがあります。 白い真珠は真っ直ぐに移動する必要がありますが、ループはそのパス内の前のセルおよび/または次のセルで回転する必要があります。 黒真珠をオンにする必要がありますが、ループはそのパス内の次のセルと前のセルを直進する必要があります。 ループはそれ自体と交差または交差してはなりません。すべてのセルには、正確にゼロまたは2つのループのエントリ/出口があります。 ウィキペディアのパズルの例(およびその解決策): あなたの目的は、与えられたパズルを解くことです。考えられる解決策が複数ある場合、どちらを指定してもかまいません。 入力 入力は、未解決の正方形グリッドになります。上記の例は次のようになります。 ..w.w..... ....w...b. ..b.b.w... ...w..w... b....w...w ..w....w.. ..b...w... w...b....w ......ww.. ..b......b wホワイトパール、bブラックパール、.空のセルです。 入力が有効であると仮定します。これは、整形式であることを意味し、少なくとも1つの解決策が可能です。有効なパズルはすべて3x3以上で、少なくとも1つの真珠が含まれています。 出力 出力は、パスを表す座標の文字列です。グリッドの左上隅は0 0、右上はn-1 0、ここでnはグリッドの幅です。 パスは、単に順序付けられた一連の座標です。 x1 y1 x2 y2 x3 y3 ... パスは閉じられていると想定されるため、最後に最初の座標を繰り返す必要はありませんが、閉じてもペナルティはありません。 出力は、パス内の少なくともすべてのコーナーで構成される必要があります。ターンがない場合、パス上のすべてのセルを出力する必要はありません。たとえば、この例の出力は次のように開始できます。 1 0 5 0 5 1 ... または 1 0 2 0 3 0 …

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