あなたのidはあなたの色と同義の整数です(あなたのidがどのようにグリッドをペイントするかに影響するかを知るために以下を見てください)。IDはボットに固有です。これは、各セルの色を示す整数を含む2D配列です。グリッドセルの番号がの場合、0セルは未塗装であることを意味します。グリッドセルの数が整数であるならx、これはセルがボットによってIDで塗られたことを意味しますx。y)ような配列を使用しますgrid[x][y]。これは、ボットの位置に関する情報を含む配列です。ここidで、はボットのID、ボットxposのx位置、ボットyposのy位置です。この配列には、独自のボットの位置とIDが含まれます。排除されたボットはこの配列に含まれません。これは、現在のゲームに関する情報を含む配列で、次のように表示されます。maxRounds]ここroundNumで、現在のラウンドの番号(1から始まる)とmaxRounds、現在のゲームのラウンドの数です。出力は、関数によって返される文字列である必要があります。これは移動コマンドです。移動コマンドは、次の移動を決定します。使用可能なコマンドは次のとおりです。移動するたびに、移動先の正方形をペイントします。どこにwait移動しないことを意味します。グリッドの外側に移動しようとすると、コマンドは無視され、同じ場所に留まります。正方形に移動するたびにペイントしますが、その正方形の色を決定するルールがあります。正方形がペイントされていない(0)場合は、自分のIDと同じ色で単純にペイントします。以前に正方形がペイントされていた場合(ゼロ以外)、次のJavaScriptコードに従って、正方形の結果の色が検出されます。この式は、ボットが再ペイントせずに独自の色の上を移動できるように作成されています。ラウンド5の後に、1つ以下の正方形(グリッドと同じ色の正方形の数)がペイントされている場合、排除されます。これは、あなたがゲームに参加しなくなり、自動的に負けることを意味します。k?これはチャレンジではなく質問です。プログラミングパズルの解決や特定の種類の課題に関連する非チャレンジ型の質問もトピックに含まれています。5文字だけのJavaScriptコードを書くことは可能ですか?JSFuckはすでに6つのシンボルでこれを行っています!+[]()が、その!キャラクターが必要かどうか疑問に思います。JSFuckは、文字列へのキャスト(空の配列の追加による)、数値へのキャスト(前に+を書き込む)、および否定によるブール値へのキャストの組み合わせで動作します。この文字列から、内部に数字を含む角括弧を使用してすべての文字を抽出できます。何回でもtrueを加算することで、任意の数字を作成できます。このように、多くの文字が見つかり、文字列に連結できます。作成できる最も重要な文字列"constructor"はFunction、任意の関数から取得するために使用でき、このオブジェクトを使用して文字列をJavaScriptとして実行できるためです。ご覧のとおり、!ここには2つの用途があります。文字列から文字を選択する番号を作成します。ブール値にキャストして取得"true"し"false"ます。これら2つの最初の1つは++、直接で0はなく、インクリメンターを使用して行うこともできますが、配列内の要素で使用できます。今日のWebプラットフォームは急速に進歩しています。以下のような特長CSS3アニメーション、変換、ドロップシャドウやグラデーション、&lt;canvas&gt;、&lt;audio&gt;および&lt;video&gt;タグ、SVG、WebGLの、そして多くはより多くのあなたがこれまで以上に、ブラウザで、そしてはるかに少ないコードではるかに行うことができますことを意味します。多くの開発者はこれらの新機能を使用できません。彼らが作業するサイトやアプリケーションは、IE6のような古くから使われているブラウザとの後方互換性が必要だからです。無制限のリソースとサーバーとの対話機能を使用すると、あらゆる種類の処理(メガバイトのコードやライブラリ、ビデオの読み込みなど)を実行できますが、課題は制約なしではあまり興味深いものではありません。このコンテストの主な制約は次のとおりです。data:URIでできること?自己完結型とは、外部リソースを参照したり、WebSocketやXHRなどを使用してサーバーに接続したりしてはならないことを意味します。PNGやMP3などのリソースを埋め込みたい場合は、データURIにデータURIを含めるか、サブリソースを埋め込む他の巧妙な方法を考えてください。4kは、適切にURIエンコードされた4096バイトのASCIIテキストを意味します(URIエンコードを回避するために、選択した場合はbase64エンコードデータURIを使用できますが、通常、プレーンテキストのURIエンコードテキストはbase64より小さくなります)。ユニコーン馬上槍試合ゲーム、ジョンスキートファクトジェネレーター、フリーハンドサークルベースの描画プログラムなど、人気のStackOverflowとmeta.soミームのいずれかを使用して何かを作成します。何らかの形でインタラクティブなエントリを奨励します。単純なアニメーションや静止画像だけでなく、イベント、CSSホバー、スクロール、ブラウザーウィンドウのサイズ変更など、ユーザーが考えられる方法を問わず、ユーザー入力に応答する必要があります。これは難しい要件ではありません。インタラクティブではない優れたデモが検討されますが、インタラクティブが好まれます。エントリは、5つの主要なブラウザ(IE、Firefox、Chrome、Safari、Opera)の少なくとも1つの少なくとも1つのパブリックリリースで実行する必要があります。メインラインリリース(ブランチからのビルドまたはパッチを必要とするビルドではない)のみが許可され、特別な構成設定、プラグイン、またはストックブラウザーに付属していないその他のものは許可されません。ナイトリービルド、ベータ版、およびリリース候補版は問題ありません。エントリでテストしたブラウザをエントリで指定してください。これらの制約内で使用できるテクノロジーに制限はありません。純粋なSVGアニメーション、純粋なCSSアニメーション、WebGLを使用したJavaScriptでの処理、またはXMLやXSLTを使用した処理を行うことができます。外部依存関係のない有効なデータURIに詰め込み、ブラウザで実行できるようになれば、それは公平なゲームです。3月21日(月)にこのコンテストに追加するために、この質問に対して賞金を用意します。担当者が101人しかいない場合、どうすれば報奨金を支払うことができますか?さて、今から月曜日までにこの質問に対する賛成票から得たすべての担当者は、報奨金になります(1回の報奨金に対して500の制限まで許可されます。エントリーはその後6日間受け入れられます。すべてのエントリは、賞金の有効期限が切れる前に少なくとも24時間以内でなければなりません。すべてのエントリをチェックアウトして評価する時間を与えてくれます。その時点で、私は最高の投票の回答を受け入れ、私のお気に入りの回答に賞金を与えます(最高の投票と同じ場合もそうでない場合もあります)。賞金を授与するための私の基準には、美しさ、楽しさ、巧妙なテクニック、新機能の興味深い使用、双方向性、サイズが含まれます。始めるためのインスピレーションのソースは次のとおりです。それが何をするのか、なぜそれがきちんとしているのか、どんな巧妙なテクニックを使ったのか。javascript30ゴールドバトルKoTHこの挑戦は終わりました。この課題では、各サブミッションは1つのボットです。各ボットはJavaScript関数でなければなりません。ボットは、金で最高の合計価値を獲得するために戦います。金は養殖するか、他のボットを殺すことで獲得することができ、治癒、攻撃、シールド、および養殖のアップグレードに使用されます。最大1000ターン(ボットが1つだけ残った時点で終了)を含む多くのラウンドで、合計の価値が最も高いボット(取得したすべての金の合計)が勝者です。HP)が1回実行されます。次のいずれかの動きを返すことができます。すべてのボットは、実行される前に移動を戻すため、スタン、ヒール、攻撃、シールドなどは、そのターンの後半に移動するボットには影響しません。ボットAがボットBをスタンし、ボットBがターン順でボットAの後にある場合、ボットBは同じターンの後半に移動し、スタンは次のターンに発生します。各ボットの最大HPは100で、割り当てられたUIDは0〜99です。このUIDはラウンドごとに変化し、ボットがお互いを追跡する方法です。HPを超えて回復することはできません。UIDでボットを攻撃することもできます。HPの基本ダメージがあります。ボットは、UIDを使用する次のターンをスキップしてスタンすることもできます。ボットには追加のシールドHPがあり、制限はありません。このシールドHPは、他のボットからの直接攻撃によるダメージを吸収し、シールドによって追加されます。レベル0では、シールドは5シールドHPを追加します。HPのコストで5ゴールドを獲得します。HPはシールドできません。ゴールドの唯一の用途は(勝ちを超えて)移動をアップグレードすることです。HPであり、農業は5ゴールドから始まります。これらの動きのそれぞれには、0から始まる個別のレベルがあります。これらの式は、HPまたは動きのゴールドの値を決定します(Lはレベルです)。ここで、Lは現在のレベルです。ボットは、cost(currentLevel)これを決定するショートカットとして関数を使用できます。ボットは25ゴールドから始まり、2移動をレベル1に、または1移動をレベル2にすばやくアップグレードできます。この開始ゴールドは、ボットの合計価値にはカウントされません。ボットを殺すと、その合計価値の半分が金になり、切り上げられます。2つのボットが同じターンに別のボットを殺すと、両方が報酬を受け取ります。これはインタラクティブなキングオブザヒルコンテストで、コントローラーは質問の下部にあるスタックスニペットに完全に含まれています。コントローラーは自動的に答えを読み取り、ゲームを通してプレイします。誰でもブラウザでいつでも実行できます。このコンテストの仕組みは、レッドvsブルーピクセルチームバトルボットと非常によく似ています。プレイされているゲームを除き、グリッドベースではありますが、まったく異なります。各ゲームは1対1であり、チームはありません。各エントリーはそれ自体のために戦っていて、最終チャンピオンになるのは1人だけです。コントローラーはJavaScriptを使用し、JavaScriptはほとんどのブラウザーがサポートする唯一のクライアント側スクリプト言語であるため、すべての回答もJavaScriptで記述する必要があります。この仕様では、イタリック体のテキストは、ゲームのメカニックまたはプロパティの正式な用語を示すために使用されます。これらの用語は、ゲームのさまざまな部分を一貫性のある明確な方法で参照するために使用されます。この質問に対するすべての答えは、プレーヤーを表しています。2人のプレーヤー、間の競争であるP1およびP2。各プレイヤーは、0〜7の番号が付けられた8つのボットの群れを制御します。セルアリーナ、その他の列が空気として開始します。グリッド境界の外側のセルは空気と見なされます。グリッドのx座標の範囲は左の0から右の127までで、yの範囲は上が0から下が63までです。ボットは常にグリッドセルに揃えられたままで、複数のボットが同じセルを占有する場合があります。ボットはエアセルのみを占有できます。P1のボットは常に、壁の上の列の一番左の行0-7で始まり、P2のボットは常に右の行7-0で始まります。ボットまたはセルの隣は、それと直接直交し対角にある8つのセルです。ボットの視野(FOV)は、ボットを中心とした13×13セルの正方形です。セルまたは敵のボットは、少なくとも1つのボットのFOVにある場合、プレーヤーのFOVにあると言われます。ゲーム中、各プレイヤーは1000回移動できます。P1が最初に移動し、次にP2、次にP1のように移動して、合計2000回移動し、ゲームが終了します。移動中、各プレイヤーはゲームの状態、FOV内のグリッドセルおよび敵ボットに関する情報を受け取り、それを使用して各ボットが実行するアクションを決定します。この場合、ボットは移動したり、グリッドと対話したりしません。他のアクションは、move、grab、およびplaceです。次の場合、ボットは隣接するセルCのいずれかに移動できます。Cは範囲外ではありません。Cの少なくとも1つの隣人は壁です。成功すると、ボットはCに移動します。次の場合、ボットは隣接セルCの1つを取得できます。Cは範囲外ではありません。ボットはまだ壁を運んでいません。成功すると、Cは空中になり、ボットは壁を運びます。Cは範囲外ではありません。どちらのプレイヤーのボットもCを占有しません。ボットは壁を運んでいます。成功すると、Cは壁になり、ボットはもはや壁を運ばなくなります。アクションが失敗すると、何も行われません。少なくとも1つの壁を運ぶボットが占有しているセルには、壁の色が付いた小さな正方形が描かれています。ボットは壁なしで始まります。移動中、プレイヤーはメモリにアクセスして変更することができます。これは、最初から空の文字列であり、ゲーム全体にわたって持続し、戦略データの保存に使用できます。黄色の十字線のセルは目標で、ランダムな位置から始まります。各プレイヤーのスコアは0から始まります。プレイヤーのボットがゴールに移動すると、そのプレイヤーのスコアは1増加し、次のターンの前にゴールがランダムに再配置されます。ゲーム終了時に最高スコアのプレイヤーが勝ちます。スコアが等しい場合、同点です。移動中に複数のボットがゴールに移動した場合、プレーヤーはまだ1ポイントしか獲得できません。目標が500の移動で同じ場所にあった場合、ランダムに再配置されます。目標がランダムに配置される場合は常に、ボットが占有しているセルに配置されないことが保証されています。この関数の本文を作成します。javascript9予約済みのJavaScriptECMAScriptの2015年の時点では、JavaScriptが持っている33個の予約キーワード、などbreak、constとnewだけでなく、10将来の予約語などを、letとawait。あなたの仕事は、機能的なJavaScriptコードを記述しながら、最大数の連続した1個の個別の予約キーワード2を連結することです3。連続した予約キーワード-空白および/または括弧および/または中括弧のみで区切られた予約キーワード。2015以降の予約済みまたは将来の予約済みキーワード。古い標準の予約キーワードは除外されます。許可されたキーワードの完全なリストを以下に示します。機能コード-コードは実行(必要に応じてランタイムを記述)し、最終的に停止し、ランタイムエラーをスローしません。コードに特定のランタイムが必要な場合、使用される予約済みキーワードは、特定の環境でノーオペレーションであってはなりません。これらの課題は、Piを概算するために自然と脳(およびおそらく再利用可能なリソース)のみを必要とするアルゴリズムのシミュレーションです。ゾンビの黙示録中に本当にPiが必要な場合、これらの方法は弾薬を無駄にしません!さらに8つの課題があります。推奨事項を作成するには、サンドボックスの投稿をチェックしてください。1)である確率は6/Pi/Piです。