プログラミングパズルとコードゴルフ

プログラミング愛好家やコードゴルファーのためのQ&A

25
特定の範囲にいくつのIPアドレスがありますか?
に触発さ... ネットワーキング-特定の範囲にいくつのIPアドレスがあるかを調べるにはどうすればよいですか? 入力として2つの文字列を受け取り、それぞれが標準のドット表記法で表されたIPv4アドレスであるプログラムまたは関数を記述し、2つのIPアドレス入力を含むこの範囲でカバーされるIPアドレスの数を出力または返します。 IPアドレスを解析するために設計された外部コード、ライブラリ、またはサービスを使用しないでください。(他の文字列処理標準ライブラリ関数は受け入れ可能です。) すべての2 ^ 32 IPアドレスは同じです。放送、クラスEなどは区別されません。 通常のコードゴルフ規則が適用されます。 例えば: "0.0.0.0","255.255.255.255" returns 4294967296. "255.255.255.255","0.0.0.0" also returns 4294967296. "1.2.3.4","1.2.3.4" returns 1. "56.57.58.59","60.61.62.63" returns 67372037. "1","2" is invalid input. Your code may do anything you like.

29
ピッチダーク(アースアワー記念)
あなたの目標は簡単です。プログラムは、コンピューターの画面を完全に黒にしなければなりません。 プログラムが開始された後、画面はすぐに完全に黒くなり、プログラムが終了するまで(任意のキー、またはalt + F4、マウスの動きなど)、そのままに戻らなければなりません。そのため、コンピューターをシャットダウンしたり、モニターの電源を切ったりすることはできません。この間、単一の非黒ピクセルが表示されることはありません。まばたきカーソルも表示されません。 ユーザーは、プログラムを起動した後、画面の外にマウスを移動したり、ケーブルを外したり、ユーザー入力を行ったりする必要はありません。 コンピューターにはモニターが1つしか接続されていないと安全に想定できます。また、標準のデスクトップまたはノートブックコンピューターを想定しています。これは、通常のモニターなしで特定のデバイスで実行するのは簡単すぎるためです。 外部リソース(黒い画像、GUIファイルなど)を使用する場合、バイト単位のサイズがコードサイズに追加されます。 1つのOSファミリでのみ動作する場合、またはopenglなどを必要とするが、非常に特定のハードウェア構成を必要とする場合は嫌です。 ソースコードは、他のプログラム(スクリーンセーバーなど)が使用する構成ファイルだけでなく、プログラミング言語で作成する必要があります。
31 code-golf 

17
HQ9 +インタープリターの作成
このゴルフの目的は、プログラミング言語HQ9 +のインタープリターを作成すること です。このプログラミング言語には4つのコマンドがあります。 H-「Hello、world!」を印刷します Q-プログラムのソースコードを出力します 9-曲「99本のビール」の歌詞を印刷します + -アキュムレータをインクリメントします ルール: アキュムレーターが定義されていないため、コマンド+ プログラムは入力を要求する必要があります(この入力はソースコードになります)。または、ソースコードがファイルから読み取られます。 「99本のビール」の歌詞をファイルに入れたり、ファイルからテキストを読んだりすることはできません。 GZipやBZipなどの圧縮アルゴリズムを使用して曲のテキストを圧縮することはできません。独自の圧縮アルゴリズムを作成する必要があります。これは複雑なアルゴリズムである必要はありませんが、可能な限りテキストを圧縮してみてください(覚えておいてください:これはコードゴルフで、バイト数が最も少ないコードが勝ちます) ソースコードにH、Q、9または+以外の文字が含まれている場合、コマンドを実行する前に「ソースコードに無効な文字が含まれています」と出力してください。これは、ソースコードがH1たとえば、出力Hello, world!する前に出力しないことを意味しますSource code contains invalid characters。いいえ、すぐに出力しますSource code contains invalid characters インタープリターが大文字と小文字の両方を受け入れる場合、文字数は-8になります がんばろう!

30
ロッカーとクラッカー:5要素シーケンス
チャレンジ 単純な「スパイ対スパイ」チャレンジ。 次の仕様でプログラムを作成します。 プログラムは任意の言語で記述できますが、512文字を超えてはなりません(このサイトのコードブロックで表されています)。 プログラムは、入力として5つの符号付き32ビット整数を受け入れなければなりません。5つの引数を受け入れる関数、単一の5要素配列を受け入れる関数、または標準入力から5つの整数を読み取る完全なプログラムの形式をとることができます。 プログラムは、1つの符号付き32ビット整数を出力する必要があります。 プログラムは、シーケンスとして解釈される5つの入力が、プログラマが選択した特定の算術シーケンス(「キー」と呼ばれる)と一致する場合にのみ1を返す必要があります。この関数は、他のすべての入力に対して0を返す必要があります。 算術シーケンスには、シーケンスの各連続要素が、その前身に何らかの固定定数を加えたものに等しいという特性がありますa。 たとえば、25 30 35 40 45シーケンスの各要素はその前身に5を加えたものに等しいため17 10 3 -4 -11、算術シーケンスです。同様に、各要素はその前身に-7を加えたものに等しいため、算術シーケンスです。 シーケンス1 2 4 8 16と3 9 15 6 12は、算術シーケンスではありません。 キーは、整数オーバーフローを伴うシーケンスが許可されていないという唯一の制限事項がありますが、任意の算術シーケンスを選択できます。つまり、シーケンスは厳密に増加、厳密に減少、またはすべての要素が等しくなければなりません。 例として、キーを選択するとします98021 93880 89739 85598 81457。プログラムは、入力が(順番に)これら5つの数値に一致する場合は1を返し、そうでない場合は0を返す必要があります。 キーを保護する手段は、独自の斬新なデザインである必要があることに注意してください。また、ゼロ以外の確率で誤検知を返す可能性のある確率的ソリューションは許可されていません。特に、標準暗号化ハッシュのライブラリ関数を含む、標準暗号化ハッシュを使用しないでください。 スコアリング 文字数ごとの最短のクラックされていない提出物が勝者と宣言されます。 混乱がある場合は、お気軽に質問またはコメントしてください。 カウンターチャレンジ 独自のプログラムを提出した人を含むすべての読者は、提出物を「クラック」することをお勧めします。キーが関連するコメントセクションに投稿されると、提出物がクラックされます。提出物が変更またはクラックされることなく72時間持続する場合、「安全」とみなされ、その後のクラックの成功はコンテストのために無視されます。 更新されたクラッキングスコアポリシーの詳細については、以下の「免責事項」を参照してください。 クラックされたサブミッションは競合から排除されます(「安全」でない場合)。編集しないでください。読者が新しいプログラムを提出したい場合は、別の回答で提出する必要があります。 最高スコアのクラッカーが、受賞プログラムの開発者とともに受賞者として宣言されます。 自分の提出物をクラックしないでください。 幸運を祈ります。:) リーダーボード 最後から2番目の順位(デニスのCJam 49提出の安全性の保留)。 安全なロッカー CJam 49、デニス CJam …

30
番号を逆にする最短の方法
関数(または同等のサブプログラム)を作成して、単一の整数値の引数を受け入れ、引数の10進数の順序を逆にして見つかった(同様に型指定された)値を返します。 たとえば、76543が34567を返す場合
31 code-golf  number 

30
数値が13で割り切れるかどうかを判断します(13自体を使用せずに)[終了]
あなたの挑戦は、あなたがそれを受け入れることを選択した場合、与えられた数が13で割り切れる場合に「はい」を出力し、そうでない場合に「いいえ」を出力する関数またはプログラムを作成することです。 ルール: -番号13はどこでも使用できません。 -13のいずれかの警戒同義語はありません(15-2を使用するなど)。 -モジュラスを使用しない場合はボーナスポイント、除算を使用しない場合は追加のボーナスポイントが付与されます。 スコアリング: -スコアは、コードのバイト数(空白は含まれません)にボーナスを掛けたものになります。 -モジュラスを使用しなかった場合、そのボーナスは0.90です。除算を使用しなかった場合、そのボーナスは0.90です。 -どちらも使用しなかった場合、そのボーナスは0.80です。 -スコアが低いほど良い。 入力は常に0より大きく2 ^ 32より小さい整数です。 出力は、単純な「はい」または「いいえ」でなければなりません。 明確化: -使用のために数13を生成する何らかのラウンドアバウト方式を使用することは許容されます。(10 + 3)のような単純な算術同義語は使用できません。 - 指定された数値が13で割り切れる場合、関数またはプログラムは文字通り「yes」または「no」を出力する必要があります。- いつものように、賢明な解決策が推奨されますが、必須ではありません。

3
酔ったタイピスト
バックグラウンド タイピストは、いくつかの飲み物を持ち帰り、輸入業者の手紙をまだ読む必要があることに気付きます。彼がテキストを正確に吟味するために、彼はテキスト文字bh vjaracter t0を書きます。ただし、キーの一部をt0ミスで管理します。 Youtタスクは、彼のttpingをシミュレートするコースを書くことです。ミスの発生を最小限に抑えるため、コードはposw9bleと同じくらい短くする必要があります。 キーボード キーボードは標準のANSIキーボードです。下の画像では、赤いテキストがキーの幅を示しています。すべての行の高さは1単位で、マークされていないキーの幅は1単位です。 キーは次のアクションを実行します(混乱を防ぐためだけにリストされています)。 Shiftはそれ自体では何もしませんが、通常のキーの直前に押すと、結果が変わります。 CapsLockキーは、キャップロックを切り替えます。Caps Lockがオンの場合、文字キーは逆大文字の文字を出力します。 Backspaceは、最後に出力された文字があれば削除します。 Tab、Return、およびSpaceは、それぞれタブ文字、改行、およびスペースを挿入します。 Ctrl、Altはプレゼンテーション用です。彼らは(そしてキーボードを完全になくして)何もしません。 すべての文字キーは、マークされた小文字を生成します。場合はShiftキーがちょうど彼らの前に押されて、彼らは大文字を作り出します。Caps Lockはケースを逆にします。 他のすべてのキーは、中央にマークされた文字を生成します。場合はShiftキーがちょうど彼らの前に押されて、彼らはトップにマークされた文字を作り出します。 タイピング 文字を生成するために、タイピストはキーボードでその文字を見つけ、Shiftキーを押す必要があるかどうかを確認します。その場合、彼は最初にShiftキーを押したままにします。その後、彼はすぐにターゲットキーを押して、Shiftキーを離します。彼は、ターゲットキーを押しようとした後、厳密にシフトキーを離します。 しかし、酔っぱらいのために、彼はしばしばキーを逃します。これは、ランダムな角度を(均一に)選択し、プレス位置をその方向に(適切な分布で)ランダムな量だけ移動し、着地したキーを押すことでシミュレートされます。 チャレンジ 入力として、書き込むテキストと、dレベルを示す数値パラメーターを受け取ります。酔ったタイピストが入力したテキストを出力し、上記のアルゴリズムでタイプミスを生成します。 仕様書 入力テキストには、印刷可能なASCII、タブ、改行のみが含まれます。 入力パラメーターは、ある種のスカラー数値です。その範囲は回答で指定できますが、値を大きくすると平均ミス距離が長くなり、逆も同様です。 キーボードを任意の内部サイズに拡大縮小できます。上記の単位サイズは単なる例です。 使用する座標は、キーの高さの1000分の1まで正確でなければなりません。 プログラムは、呼び出しごとに異なる結果を生成する必要があります。(のようなものsrand(time(NULL));、つまり毎秒変化するもので十分です。) ミス距離の分布は、正規分布または同様に機能する他の分布にすることができます(小さな値の確率が大きく、値が大きいほど急速に減少します。たとえば、負の指数は問題ありません)。 タイピストの指は一点です。その半径について考える必要はありません。 タイピストは、それが端にない限り、キー内のどこにでも向けることができます。中心、定位置などが有効です。 Shiftキーの選択方法は何でもかまいません。常に選択できますが、Shiftキーを押し忘れた場合は、両方のShiftキーを使用する必要があります。 Shiftキーは、キーが保持されている場合にのみ影響します(つまり、Shiftキーを押すと、別のキーの前に試行されて成功します)。Shiftキーを押しても「通常」キーを押しても何も起こりません。 Shiftキーは実際のキーの直前に押されてすぐに離されるため、間違ったキーが押されても文字の繰り返しは発生しません。 I / Oの例 以下のすべての例は、距離に正規分布を使用し、常に左のShiftを選択する参照ソリューションからのものです。タブはSEによってスペースとして表示されますが、実際の出力に表示されるはずです。 入力: Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed posuere interdum …

30
指定された2つのインデックスを交換します
正の整数の配列と2つの異なる有効なインデックスを指定すると、2つのインデックスに対応する2つの要素が入れ替わった配列を返します。 0インデックス付けまたは1インデックス付けを選択できますが、以下のテストケースは0インデックス付けされます。 array m n output [1,2,3,4] 0 1 [2,1,3,4] [5,8,9] 0 2 [9,8,5] [11,13,15,3] 1 2 [11,15,13,3] [11,13,15,3] 2 1 [11,15,13,3] [11,15,15,3] 2 1 [11,15,15,3] これはcode-golfです。バイト単位の最短回答が優先されます。標準の抜け穴が適用されます。

30
先行ゼロと後続ゼロを削除します
次のような非負の整数のみを含む空でないリスト/配列がある場合: [0, 0, 0, 8, 1, 4, 3, 5, 6, 4, 1, 2, 0, 0, 0, 0] 末尾のゼロと先頭のゼロを削除してリストを出力します。 この出力は次のようになります。 [8, 1, 4, 3, 5, 6, 4, 1, 2] 他のいくつかのテストケース: [0, 4, 1, 2, 0, 1, 2, 4, 0] > [4, 1, 2, 0, 1, 2, 4] [0, 0, 0, 0, …

1
止まる問題を解決する私の試みを混乱させる
注:その性質上、この課題の仕様を理解することは困難です。少なくとも、計算可能性理論の新入生コース、または同等のバックグラウンドリーディングが必要です。さらに、チャレンジ自体はかなり難しいです。それに答えるには、選択した言語の一部のインタープリター全体を書く必要があり、それだけでなく、インタープリターはクインのようなものの形である必要があります。答えがこれをすべて行っていない場合、仕様を満たさないことはほぼ確実です。 この課題を解決するために、停止問題を(部分的にでも)解決する必要はありません。しかし、あなたはほぼ確実に行うことがフィーチャ、完全である必要はないが、(それが解釈し、同じ言語で書かれた、使用している言語の)インタプリタを書く必要があります。これが、これを興味深い挑戦にしています。 私は、仕様を満たす最初の回答に対して500ポイントの報奨金を授与することを約束しました。これは、ジョー・キングのBF回答に授与されます。 チャレンジ 停止問題の解決不可能性のアランチューリングの証明の大まかな簡略版は、次のようになります。 F停止しているプログラムを解決するためのプログラムを書いたとします。つまりF、別のプログラムのソースコードを入力として受け取り、停止F(G)した1場合に戻りG、0そうでない場合に戻ります。 しかし、プログラムを提供すると、入力としてプログラムを実行するF別のプログラムを作成できます。場合戻り、その後を返し、そうでなければ、それは意図的に無限ループに入ります。これは逆説につながり、結局停止問題を解決できないと結論付けなければなりません。HHF(H)0H0F あなたの仕事はプログラムを書くHことですが、ひねりを加えて:私はあなたに私のプログラムを提供するつもりはありません。代わりに、プログラムは入力としてプログラムのソースコードを受け取ります。あれは: あなたのプログラムは、私のプログラムをソースコード形式で入力として受け取ります。(たとえば、ファイルまたはコマンドライン入力として、詳細はあなた次第です。) 私のプログラムはあなたのプログラムと同じ言語で書かれ、ソースコード文字列の形式で入力を受け取ります。 場合は私のプログラムのリターンが0与えられたとき、あなたのプログラムを入力として、あなたのプログラムが停止(と返す必要があります0与えられたときに)私のプログラムを入力として。(「リテーリング0」の正確な意味はあなた次第です。) 私のプログラムが停止しない場合、または0プログラムが入力として与えられた場合以外の何かを返す場合、プログラムは無期限に実行し続ける必要があります。 ひねりは、それを本当にかなり難しくするために、次の規則に従う必要があるということです: いかなる種類の組み込み関数execまたはeval-type関数も使用できません。 独自のプログラムのソースコードを取得するために、「チート」メソッドを使用することはできません。(たとえば、「これを「プログラム」というファイルに保存する」と言ってopen(program)から、プログラムに入れることはできません。) これは、プログラムが文字列の形式で独自のソースコードを再現できるだけでなく、記述された言語を正しく解析および解釈できる、ある種のクレイジーなスーパークインでなければならないことを意味します。 非常に難しいことを少し減らすために、選択した言語の(チューリング完全な)サブセットのみを使用することができます。あなたのプログラムがPythonで書かれていて、私のプログラムにifsとwhileループと基本的な文字列操作しか含まれていない場合にのみ機能するのであれば、あなたのプログラムもこれらのものだけを使用していれば問題ありません。(つまり、選択した言語の標準ライブラリ全体の実装について心配する必要はありません!)ただし、プログラムを実際に実行する必要があります-独自の言語を作成することはできません。 これは人気コンテストなので、投票数が最も多い答えが勝ちます。ただし、上記のように、仕様を満たすことは非常に難しい課題であるため、私の判断に従って、最初の回答に対して500ポイントの賞金を授与します。 注意してください:私が使用した正確な言葉遣いを考えると、間違いなくこの挑戦​​で「だます」ことができる多くの方法があります。しかし、質問の精神に入る答えを本当に望んでいます。意図したとおりの挑戦は非常に難しいが可能ですが、私は本当にそれに対する真の解決策を期待しています。私の判断でチートな感じがする答えには賞金を授与しません。 注:このチャレンジは元々、popular-contestとして投稿されましたが、「客観的な勝利基準」がないため2016年に終了し、再開するためにコードゴルフに変更しました。ただし、2018年1月の時点で、PPCGの人気コンテストは実際には禁止されていないことがわかりました(これが最新のメタディスカッションであるため)、そもそもサイトのポリシーに反することです。ポプコンは最近人気がないことを理解していますが、これは古い挑戦であり、その性質によりコードゴルフには本当に不適切ですスコアリングシステム。まだ許可されてはならないと強く感じている人がいる場合は、投票を開始する前にメタディスカッションをしましょう。最後に、去年誰かがソリューションをゴルフしようとして過ごしたという偶然について、それはこの挑戦と同じくらい競争力があり、コードゴルフと同じように賞金に値することを保証しますバージョン。

14
クインの猫2匹
チャレンジ 2つのプログラム、AとBを作成します。どちらも同じ言語のcatプログラムです。連結された場合、AB(同じ言語でも)はクインである必要があります。 たとえば、とが両方とも言語XYZのcatプログラムであるhelloとしworldます。helloworldが上記の言語の馬である場合、ソリューションは有効です。 猫やキンになじみのない人にとっては、猫のプログラムはstdinを介して与えられたものを正確に出力するものであり、キネは独自のソースコードを出力するプログラムです。 スコアリングとルール 連結されたABプログラムの合計バイト数がスコアです。これはコードゴルフであるため、最低スコアが勝ちます。 標準的な抜け穴は禁止されています 入力はstdinから取得し、出力はstdoutに送信する必要があります。 catプログラムは引数を取る必要はありません。標準入力を標準出力にコピーするだけです。 クインは、プログラムに入力が与えられていないときに機能するはずですが、他の入力に対して正しく機能する必要はありません(可能性はあります)。 クインは、ソースコードを一度だけ正確に出力する限り、終了する必要はありません。 クインは少なくとも1バイトの長さが必要です。 AとBは同じプログラムにすることができます。 BAは、クインまたは有効なプログラムである必要はありません。
30 code-golf  quine 

3
私と一緒にゴルフ言語を構築する
多くのPPCGユーザーが、チャットとサンドボックスの両方で、特にMartin Ender、AdmBorkBork、Emigna、およびuser202729でこの課題の作成を支援しました。 私たちのコミュニティは、ゴルフのために特別に設計された一連の言語、つまり「ゴルフ言語」を作成する必要があると考えています。このような言語は、かつては見栄えがよく、今ではぎこちないGolfScriptから、JellyやHuskなどの洗練された簡潔な言語に進化しました。ご覧のとおり、これらの言語は、一連のタスクでますます短くなっています。ですから、ここの周りのゴルフの言語に関する明白な専門家として、私たちは競争する勇気がある他のすべての言語を打ち負かすために一緒に言語を設計するべきです。ビューグルの紹介! ラッパ:頭字語からBuGoL:Bu ilt Go lfing L anguage。 この課題の仕組み 導入部で私がほのめかしているものが得られなかった場合、この課題は回答連鎖課題であり、それぞれが新しいゴルフ言語の通訳者に何かを提供し、各回答でPPCGで競争する能力を向上させます。 言語仕様/通訳の基礎からなる最初の回答を投稿しますが、他のすべての回答はそれから継続します。新規提出により、次のものが提供されます。 言語の仕様の変更 最新の通訳者で、変更点に正確に対応しているもの 言語の更新されたスコア(詳細は少し) 次の3つの方法のいずれかで仕様を変更できます。 単一のコマンドを追加できます 2つの新しいコマンドを追加できます 1つの既存のコマンドの動作を編集できます 新しいインタープリターに関しては、Pythonで書かれた最新バージョンを使用する必要があります。ゴルフする必要はありません。以前に追加したコマンドはすべて、最新のインタープリターと最新のコマンド(追加したコマンド)でテスト可能でなければなりません。また、コメントや文字列リテラルなどのように、インタープリターを更新するときは、攻撃的な言語を使用しないでください。 追加されたコマンドは、あなたが望むことをするかもしれません。唯一の要件は次のとおりです。 攻撃的な出力を生成しません 別のコマンドとは異なります サンプルの課題の1つが完了するのを妨げません これらとは別に、必要に応じて特定または一般的なものにすることができます。また、任意の文字を使用できます。追加したコマンドが「新しいコマンド」であるかどうかわからない場合は、コメントでお気軽にお問い合わせください。 言語のスコア あなたは、すべての新しい提出物に言語のスコアを含める必要があることに気づいたかもしれません。そのスコアは、このチャレンジが永遠に続くことを防ぐものであり、次のように定義されます。 現在のスコアは、言語が20以下のタスクを完了するために必要なバイトカウントの合計です。 各タスクには、標準I / Oルールが適用され、標準の抜け穴が適用されます。 20のタスク: "こんにちは世界!" –文字列を出力するHello, World! 1、2、Fizz、4、Buzz – 1から100までの各整数を別々の行に出力します。3のFizz倍数が、5のBuzz倍数が、両方の倍数が、FizzBuzz ソースコードに数字を含めずに数字2014を生成する – 外部変数やランダムシードにアクセスせずに、ソースコードの文字を使用せずに数字2014を出力します0123456789 難読化されたHello World – Hello, World!次のセットの少なくとも2つの文字を使用せずに文字列を出力します:hlwd、eor01および27(大文字と小文字を区別しない) お気に入りのプログラミング言語にハッピーバースデーを歌う –選択した言語で、次を出力します。 Happy Birthday …

4
人生はカラフルになることができます!
生きているようなセルオートマトンの各セルは、生きているか死んでいるだけであるため、それを表すのに1ビットしか必要ありません。つまり、2色しかありません。かなり退屈。 通常の画像のピクセルあたりのビット数は24です(RGBごとに8ビット)。これは、セルとしてピクセルを持つ通常の画像では、24のリアルなゲームを一度にシミュレートできることを意味します! チャレンジ あなたの仕事は、実物のようなセルオートマトンの1世代のルールを24ビット深度画像(お好みのよく知られている形式)に適用し、結果の画像を出力するプログラムを書くことです。 24の各レイヤーは、厳密に独自のレイヤー内で、同じリアルなルールセットを使用します。24層は相互に作用しません。 また ゼロは死んだ細胞であり、ゼロは生細胞です。 境界条件は周期的です(トーラスを形成します)。 すべての画像サイズが機能するはずです。 入出力 プログラムは、stdinまたはコマンドライン(または言語に最も近いもの)を介して3つの引数を取る必要があります。 入力画像ファイルの名前。 新しいセルがいつ生まれるかを示す昇順の0〜8の数字の文字列: 桁の場合はdが文字列である彼らが持っているときに死んだ細胞が生きてくるD生活隣人を。 例:3通常の生活 -正確に3つの生きている隣人の死んだ細胞が生き返ります。 既存のセルがいつ生き残るかを示す、昇順の0から8までの数字のストリング: 桁の場合はdが文字列である、その後で生きた細胞D生きている隣人はそうでない場合、彼らは死ぬ、次世代に生き残ります。 例:23通常の生活-正確に2つまたは3つの隣接セルを持つセルのみが次のラウンドまで生き残ります。 ムーア近傍が常に使用されることに注意してください。実物のようなオートマトンと多くの興味深いルールセットを正確に定義するものの詳細については、こちらまたはこちらをお読みください。 1世代以降の出力イメージは、表示するかout.png、bmpまたは(または何でも)として保存する必要があります。 提出 バイト単位の最短コードが優先されます。 いくつかの重要なルールセットに対して、少なくとも1つのテストイメージとその3つの後続の世代を含める必要があります。これ以上良いものが思いつかない場合は、アバターと通常のライフルールを使用してください。 必要に応じて、緑色の128層に唯一の生きているビットがあるこのGosper Glider Gunを使用できます(通常の生活でのみ動作するはずです)。 興味深いシーケンスやアニメーションを投稿することを強くお勧めします。

7
ハウディ!私はコードゴルフの保安官です!
数か月前にTwitterを使った人なら誰でも、「ハウディ!私はX "ミームの保安官です。保安官のシンプルなイメージが絵文字で描かれ、テーマに合わせて変化します。だから、コードゴルフの保安官の時間だと思いました。 ### ##### ### ### ### # ##### # # # # # # # # # # ### # # # # # # # # 特にこれには、幅が1文字、高さが1文字の「ピクセル」があります。彼を生成するには、引数は1と1になります。 彼が背が高いよりも広くなるとどうなりますか? ###### ########## ###### ###### ###### ## ########## ## ## ## ## ## ## ## ## ## ## ###### ## ## …

8
マージソートの視覚化
マージソートは、指定されたリストを半分に分割し、両方の小さなリストを再帰的にソートし、それらを1つのソート済みリストにマージして戻すソートアルゴリズムです。再帰の基本ケースはシングルトンリストに到達しているため、さらに分割することはできませんが、定義ごとに既にソートされています。 リスト上のアルゴリズムの実行は[1,7,6,3,3,2,5]、次の方法で視覚化できます。 [1,7,6,3,3,2,5] / \ split [1,7,6,3] [3,2,5] / \ / \ split [1,7] [6,3] [3,2] [5] / \ / \ / \ | split [1] [7] [6] [3] [3] [2] [5] \ / \ / \ / | merge [1,7] [3,6] [2,3] [5] \ / \ / merge [1,3,6,7] …

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