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

六角形のグリッド上のデータを含む課題。このタグは、三角形グリッド、つまり六角形グリッドの双対にも使用します(つまり、六角形グリッドの頂点が三角形グリッドの面を形成し、逆も同様です)。

30
Parrotプログラムを作成する
入力が与えられると、その入力の後に改行が際限なく続きます。 入力は、印刷可能なASCII文字(0x20-0x7E)と改行(0x0A)のみで構成される文字列になります。 入力の長さが0の場合、改行を無限に出力します。 これはコードゴルフなので、各言語で最も少ないバイトです勝ちます!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

4
HexaGolf:ロータタゴン
参照:ワードゴン チャレンジ n入力として六角形と数値を指定すると、同じ六角形の回転n時間を出力します。 六角形 六角形は次のような文字列になります。 a b c d d e e f f o g g h h i i j k l 六角形は常に規則的であり、印刷可能なASCII文字のみが含まれます。 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 回転 六角形をどれだけ回転させるかを調べるにはn、60度を掛けて回転角度を取得します。たとえば、上の六角形を使用して、n2の場合、60を掛けて120度を取得します。次に、六角形を120度回転します。 j h f k h f d l i o d a i g e b g e c 各側面が時計回りに2つの側面を移動していることに注意してください。 n正の場合、六角形を時計回りに回転させる必要があります。もしnが負の、六角形を反時計回りに回転させる必要があります。 n …

6
六角形グリッド上の動き
六角形のグリッド上の動きを表す一連の文字の入力が与えられた場合、「ポインター」の最終座標を出力します。 六角形には次のように番号が付けられます(すべての奇数列が少し下にシフトした長方形のグリッドを想像してください): _____ _____ _____ _____ / \ / \ / \ / \ / -3,-2 \_____/ -1,-2 \_____/ 1,-2 \_____/ 3,-2 \ \ / \ / \ / \ / \_____/ -2,-1 \_____/ 0,-1 \_____/ 2,-1 \_____/ / \ / \ / \ / \ / -3,-1 \_____/ -1,-1 …

3
スタックベースの言語をトークン化する
私は、に取り組んできた別のと呼ばれるスタックベースのゴルフの言語Stackgoat。この課題では、Stackgoat(または実際には一般的なスタックベースの言語)のTokenizerを作成します。 例 "PPCG"23+ ["PPCG", '23', '+'] 'a "bc" + ['"a"', '"bc"', '+'] 12 34+-"abc\"de'fg\\" ['12', '34', '+', '-', '"abc\"de'fg\\"'] "foo ['"foo"'] (empty input) [] ' "" ['" "', '""'] 仕様 処理する必要がある3つのタイプは次のとおりです。 ストリングス、何も内"" 数字、数字列 演算子、空白以外の任意の単一文字 空白は、文字列内にあるか、2つの数値を区切っていない限り、本質的に無視されます。 文字列/文字仕様: 文字列はで区切られ、が検出された"場合\、次の文字をエスケープする必要があります。 '文字はa で始まり、その後の'文字は文字列リテラルに変換されます。'a->"a" ' 常にその後に文字があります 終値を自動挿入する必要があります ルール: の形式evalは許可されません 入出力: 入力は、STDIN、関数パラメーター、または同等の言語を通じて取得できます。 出力は、配列または言語に最も近いものでなければなりません。
15 code-golf  parsing  code-golf  hexagonal-grid  code-golf  string  code-golf  string  code-golf  combinatorics  code-golf  ascii-art  code-golf  string  game  counting  code-golf  arithmetic  complex-numbers  code-golf  string  code-golf  decision-problem  hexagonal-grid  code-golf  string  sequence  code-golf  number  arithmetic  code-golf  ascii-art  code-golf  ascii-art  code-golf  string  arithmetic  code-golf  number  simulation  code-golf  number  arithmetic  code-golf  string  sequence  unicode  code-golf  string  ascii-art  balanced-string  code-golf  number  clock  code-golf  ascii-art  number  code-golf  math  number  sequence  code-golf  string  ascii-art  balanced-string  code-golf  math  string  popularity-contest  graphical-output  image-processing  code-golf  string  permutations  code-golf  string  code-golf  random  code-golf  string  cryptography  palindrome  code-golf  chess  code-golf  math  array-manipulation  topology  code-golf  math  sequence  code-golf  keyboard  classification  code-golf  string  sequence  code-golf  natural-language  code-golf  math  number  sequence  sorting  code-golf  sequence  combinatorics  grid  tic-tac-toe  code-golf  geometry  code-golf  number  restricted-source  new-years  expression-building 

9
非対称KOTH:Catch the Cat(Catスレッド)
非対称KOTH:猫を捕まえる UPDATE: Controller.javaが例外(エラーのみ)をキャッチしなかったため、gistファイルが更新されます(新しいサブミッションを含む)。現在、エラーと例外をキャッチし、それらも出力します。 このチャレンジは2つのスレッドで構成されています。これはcatスレッドです。キャッチャースレッドはここにあります。 コントローラーはここからダウンロードできます。 これは非対称のKOTHです。各サブミッションは猫またはキャッチャーです。それぞれの猫とキャッチャーの各ペアの間にゲームがあります。猫とキャッチャーは別々のランキングを持っています。 キャッチャー 六角形のグリッドに猫がいます。あなたの仕事は、できるだけ早くそれをキャッチすることです。猫がそこに行くのを防ぐために、毎ターン、1つのグリッドセルに水バケツを置くことができます。しかし、猫は(おそらく)愚かではなく、バケツを置くたびに、猫は別のグリッドセルに移動します。グリッドは六角形であるため、猫は6つの異なる方向に進むことができます。あなたの目標は、猫を水バケツで囲むことです。 ネコ あなたは、キャッチャーがあなたの周りに水バケツを置くことによってあなたを捕まえようとしているのを知っています。もちろん、あなたは逃げようとしますが、あなたが怠catな猫であるように(猫はそうです)、あなたはまさにその時に一歩を踏み出します。つまり、同じ場所に滞在することはできませんが、周囲の6つのスポットのいずれかに移動する必要があります。キャッチャーが新しい水バケツを置いたのを見るたびに、別のセルに行きます。もちろん、できるだけ長く回避しようとします。 グリッド グリッドは六角形ですが、六角形のデータ構造がないため、11 x 11正方形の2D配列を取り、猫が6方向にしか移動できない六角形の「動作」を模倣します。 トポロジーはトロイダルです。つまり、アレイの「外側」のセルを踏むと、アレイの反対側の対応するセルに転送されます。 ゲーム 猫はグリッドの指定された位置から始まります。キャッチャーは最初の動きをすることができ、猫とキャッチャーは猫が捕まるまで交互に動きます。ステップ数は、そのゲームのスコアです。猫は可能な限り大きなスコアを取得しようとし、キャッチャーは可能な限り低いスコアを取得しようとします。参加したすべてのゲームの平均合計が提出のスコアになります。猫用とキャッチャー用の2つの別々のランキングがあります。 コントローラ 指定されたコントローラーはJavaで作成されています。キャッチャーまたは猫として、それぞれJavaクラスを実装し(既にいくつかの基本的な例があります)、playersパッケージに配置する必要があります(さらに、コントローラークラスの猫/キャッチャーのリストを更新します)。そのクラス内の追加機能。コントローラーには、単純なcats / catcherクラスの2つの実例がそれぞれ付属しています。 フィールドは、セルの現在の状態の値を格納する11 x 112D int配列です。セルが空の場合は値0があり、猫がいる場合は値-1があり、バケットがある場合はがあり1ます。 あなたが使用できるいくつかの特定の機能がありますisValidMove()/ isValidPosition()あなたの移動(猫)/位置(キャッチャー)が有効であるかどうかをチェックするためのものです。 あなたの番になるたびに、関数takeTurn()が呼び出されます。引数には、現在のグリッドのコピーが含まれており、read(i,j)のセルを読み取るためのメソッドや、回答の有効性をチェックするメソッドが(i,j)含まれisValidMove()/ isValidPosition()ています。これにより、トロイダルトポロジのラップも管理されます。つまり、グリッドが11 x 11のみの場合でも、セルにアクセスできます(-5,13)。 このメソッドはint、可能な移動を表す2つの要素の配列を返す必要があります。猫の場合、これらは{-1,1},{0,1},{-1,0},{1,0},{0,-1},{1,-1}猫が行きたい場所の相対位置を表し、キャッチャーはバケツを置きたい場所の絶対座標を返します{i,j}。 メソッドが無効な移動を生成する場合、提出は失格となります。移動先がすでにバケットであるか、移動が許可されていない/移動先が既に占有されている場合(猫として)、またはバケット/猫が既に存在する場合(キャッチャーとして)、移動は無効と見なされます。あなたは、与えられた関数で事前にそれをチェックすることができます。 提出は合理的に高速に動作するはずです。メソッドが各ステップで200ミリ秒以上かかる場合、失格になります。(できればもっと少ない...) プログラムは、ステップ間で情報を保存できます。 提出 必要な数だけ提出できます。 既に提出した提出物を大幅に変更しないでください。 新しい回答を提出してください。 各提出には、一意の名前を付けることができます。 提出物は、クラスのコードと、提出物の仕組みを説明する説明で構成する必要があります。 <!-- language: lang-java -->自動構文強調表示を得るために、ソースコードの前に行を書くことができます。 得点 すべての猫は、すべてのキャッチャーと同じ回数だけ競争します。私は頻繁に現在のスコアを更新しようとします、アクティビティが減少したときに勝者が決定されます。 この挑戦はこの古いフラッシュゲームに触発されています @PhiNotPiにテストと建設的なフィードバックを提供してくれてありがとう。 現在のスコア(ペアリングごとに100ゲーム) …

6
ASCII六角形チェーン
問題 xそれぞれy長さのある六角形のチェーンを長く描きます 入力 x -チェーンの長さ<= 50 y -各辺の長さ<= 50 例 x=1,y=1 _ / \ \_/ x=4,y=1 _ _ / \_/ \_ \_/ \_/ \ \_/ \_/ x=3,y=2 __ __ / \ / \ / \__/ \ \ / \ / \__/ \__/ \ / \__/ ルール バイト単位の最短の有効な回答が優先されます。 先頭および末尾の改行が許可されます。 末尾の空白が許可されます。

4
ヘキサゴルフ:バリダゴン
チャレンジ ASCIIアートの形を考えると、その形が正六角形かどうかを調べる必要があります。 六角形 通常の六角形は、2つのルールを使用して定義されます。 それは6つの側面を持っています 各辺の文字数は等しい たとえば、次の形状は規則的ですが、6つの辺がないため、正六角形ではありません。 B a a h s a i d y o u r g a o t 同様に、以下の形状は、6つの辺を有するが、異なる長さの辺を有し、そうではない正規六角形。 * * * * * * * * * * * * * * ただし、次の形状には6つの辺があり、すべての辺に同じ数の文字があるため、正六角形です。 T h e h e x a g o n s …

1
絶滅からガチョウを救う
アレックスAとして知られるガチョウの種は、64個のセルで構成される三角形のグリッドに存在することが知られています。 (この無関係なプロジェクトオイラー問題から撮影した写真。) 各セルに番号0をラベル付け63し、一番上の行から始めて、その下の各行を左から右に移動します。したがって、上のセルはで0あり、右下のセルは63です。 各セルには3つの境界線があります。フォーム内の各境界線にラベルを付けることができますa,b。aおよびbは、その境界線を共有するセルの番号です。たとえば、セル0との境界線2が呼び出される0,2か、2,0(どの順序で配置してもかまいません)。 グリッドの端のセルには他のセルと共有しない境界があるため、グリッドの端の境界のラベル付けシステムは異なります。境界線が1つのセルの一部のみである場合、文字を使用しXます。例えば、セルの3つの境界が0あり0,2、0,Xと0,X。 一部のセルにはガチョウが含まれています。しかし、これらのガチョウは、あなたがそれらを保護しないと、邪悪なキツネ(グリッドの境界の外側から来る)によって殺されます。そして、すべてのガチョウが死ぬと、BrainSteelは悲しくなります。そのため、ガチョウを保護するためにガチョウの周りにフェンスを構築するプログラムを作成します。ガチョウは、フェンスで囲まれた単一の完全に囲まれたポリゴンに存在する必要があります。フェンスの予算は非常に低いため、可能な限り少ない数のフェンスを使用してください。 入力の説明 ガチョウを含むセルを表す、カンマ区切りの0to からの数字のリスト63。例: 6,12 出力の説明 ガチョウを正常に保護するためにフェンスを構築する必要がある国境のリスト。これは、可能な限り最小のフェンスにする必要があります。例: 5,6 6,7 11,12 12,13

22
アスキールービックキューブ
これと次のチャットに触発された: あなたの仕事は以下を出力することです: _ _ _ /_/_/_/\ /_/_/_/\/\ /_/_/_/\/\/\ \_\_\_\/\/\/ \_\_\_\/\/ \_\_\_\/ キューブの外観を変更しない限り、余分な先頭または末尾の空白を使用できます。通常どおり、関数から上記または文字列のリストを返すことは許可されています。 これはcode-golfなので、バイト単位の最短回答が勝ちです!

3
音素アブギダ
キャラクター これらのUnicode文字を英語のIPA子音と呼びましょう: bdfhjklmnprstvwzðŋɡʃʒθ そして、これらのUnicode文字を英語のIPA母音と呼びましょう : aeiouæɑɔəɛɜɪʊʌː (はい、ː単なる長母音マークですが、この課題のために母音として扱います。) 最後に、これらは一次および二次ストレスマークです: ˈˌ ことに留意されたいɡ(U + 0261)小文字gではなく、一次ストレスマーカーˈ(U + 02C8が)アポストロフィではなく、ː(U + 02D0)は、結腸ではありません。 あなたのタスク 単語が与えられたら、続く子音の上に母音を重ね、前に来る子音の下に強勢マーカーを置きます。(質問のタイトルが示唆するように、子音母音シーケンスがユニットとしてまとめられているような書記体系はabugidaと呼ばれます。)入力が与えられると、出力ˈbætəlʃɪpを生成します。 æə ɪ btlʃp ˈ 単語は上に定義した、子音、母音、およびストレスマークの文字列であることが保証されます。連続する強勢記号は決して存在せず、それらは常に単語の先頭および/または子音の前に置かれます。 テストケース 母音が連続している場合があります。例えば、kənˌɡrætjʊˈleɪʃənとなり ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 単語が母音で始まる場合、子音と「ベースライン」に印刷:əˈpiːlとなり ː i əpl ˈ 初期の強調母音を含むテストケース:にˈælbəˌtrɔsなります ə ɔ ælbtrs ˈ ˌ 長い言葉:にˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəsなる æ ː ː ʊ uə aə …

1
ASCII六角形グリッドの描画とラベル付け
で、私の前の課題、私はほとんど手で(Vimのビジュアル・ブロックモードの助けを借りて)最初の図を描きました。しかし、確かにもっと良い方法があるはずです... 幅と高さの2つの次元の入力が与えられた場合、ASCIIアートでこれらの次元を持つ六角形のグリッドを出力します。 これは、イントロで参照されるダイアグラム(マイナーな編集を含む)であり、入力の出力になりますwidth=7, height=3。 _____ _____ _____ / \ / \ / \ _____/ -2,-1 \_____/ 0,-1 \_____/ 2,-1 \_____ / \ / \ / \ / \ / -3,-1 \_____/ -1,-1 \_____/ 1,-1 \_____/ 3,-1 \ \ / \ / \ / \ / \_____/ -2,0 \_____/ 0,0 \_____/ …

2
中国チェッカー最長移動
中国のチェッカー、ピースは、他の部分の上にホッピングすることによって、又はそのようなホップのシーケンスを行うことで移動することができます。あなたの仕事は、ホップの可能な限り長いシーケンスを見つけることです。 入力 それぞれがボード上の場所を表す121個のゼロまたは1のシーケンス。ゼロは、場所が空であることを意味します。1はその場所が占有されていることを意味します。位置は左から右にリストされています。上から下へ。たとえば、このセットアップの入力は次のようになります 1011110011000001000000000000000000000000100000000001000000000000000000000000000001000000000000000000000001000001100111111 説明: 一番上の場所は緑色の部分で占められているため、入力の最初の数字は1です。2番目の行には空の位置が1つあり、次に占有位置が1つあるので、01次に来ます。3番目の行はすべて占有されているため、111です。4番目の行には、2つの空のスペースと2つの占有スペース(左から右へ)があり0011ます。次に、次の行に5 0、a 1、7が続き0ます。 そのセットアップのように、まっすぐ上を指すコーナーがあります。ボードにはいくつのピース(1から121)があってもかまいません。異なる色の部分は、異なって表されないことに注意してください。 出力 ボード上の任意のピースを使用したリーガルホップの最大長。同じ場所に複数回アクセスすることはできません(開始位置と終了位置を含む)。ただし、同じ部分に複数回ホップすることができます。正当なホップがない場合、output 0。合法的な非ホップ移動が存在するかどうかを考慮しないでください。 たとえば、上記のセットアップへの出力は3です。 入力と出力は、stdinとstdout、コマンドライン引数、関数呼び出し、または同様の方法で実行できます。 テストケース 入力: 0100000010000000000000000100000000000000000000000000000001010010000000000000000000000101000000000000000000100000000100001 出力:0(2つの部分が隣り合っていない) 入力: 0000000000111100000000011100000000011000000000100000000000000000000000000000000000000000000000000000000000000000000000000 出力:(1左上隅の1人のプレーヤーの初期設定)

2
六角形座標:極座標からデカルト座標
ウィキペディアは極座標について述べています: 数学では、極座標系は2次元の座標系であり、平面上の各点は、基準点からの距離と基準方向からの角度によって決定されます。 これは、六角形のグリッドを記述するのに最適のようです。たとえば、次の六角形のグリッドを考えてみましょう。 A B C D E F G H I J K L M N O P Q R S 基準点は六角形の中心(「J」)になり、基準角は六角形の左上隅(「A」)になります。ただし、角度は、角度ではなく、このポイントから六角形の外側を回る時計回りのステップ数で説明します。したがって、角度ではなく「ステップ番号」と呼びます。 たとえば、「C」は半径が2(中心から2リング離れているため「J」)であり、ステップ番号が2(「A」から時計回りに2つ前方)であるため、(2、2)にあります。 ')。同様に、「O」は(1、3)にあります。これは、中心から1リング離れているため、「E」(基準角度上)から時計回りに3歩進むためです。 完全を期すために、「J」は(0、0)にあります。これに到達するには0歩、時計回りに0歩が必要です。 これで、デカルト座標で六角形を記述することもできますが、オフセットのため、これは少し奇妙です。極座標と同様に、中心を(0、0)に置きます。各スペースも座標を占めるため、「K」は(1、0)ではなく(2、0)にあります。これにより、(-2、2)に「A」、(1、-1)に「O」が配置されます。 チャレンジ 極座標の六角形座標を指定して、デカルト座標で同じ座標を出力します。これらの座標を取り、適切な形式で回答を出力できます。これは、必要に応じて入力の順序を逆にすることができることを意味します。これはまた、座標を(Y、X)として出力できることを意味しますが、そうする場合は、混乱を避けるために回答にこれを記載してください。 負の半径を処理する必要はありませんが、負の角度、または六角形の周りの完全な回転以上の角度を取得する場合があります。たとえば、入力として(1、10)または(1、-2)を受け取る場合があります。これらは両方とも前の六角形の「N」に対応します。入力のために非整数を処理する必要はありません。 サンプルIO #Polar #Cartesian (0, 0) (0, 0) (1, 2) (2, 0) (6, 0) (-6, 6) (2, -3) (-3, -1) (4, …

2
Xが3より大きく、XとYの間に少なくとも2つの差がある
私はいくつかのC ++をゴルフしようとしています。この条件を短くすることは可能ですか? X > 3 & X - Y > 1 (もちろん、空白の削除は別として。) だから、X少なくともです4がX >= Y + 2。 XおよびYは、[0,5]間隔の整数です。 ビット単位の数式を見つけようとしましたが、失敗しました。
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

4
ASCII六角形リングタイリングを作成する
ASCIIを使用して、六角形のリングタイルのセクションを印刷します。 ここに小さなセクションがあります: /\__/\ /_/ \_\ /\__/\ \__/ /\__/\ /_/ \_\/__\/_/ \_\ \ \__/ /\__/\ \__/ / \/__\/_/ \_\/__\/ /\__/\ \__/ /\__/\ /_/ \_\/__\/_/ \_\ \ \__/ /\__/\ \__/ / \/__\/_/ \_\/__\/ \ \__/ / \/__\/ ここに大きなセクションがあります: \ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\ …

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