タグ付けされた質問 「graphical-output」

この課題には、画面上に絵を描くか、画像ファイルを生成することが含まれます。純粋なASCIIアートコンテストの場合は、代わりに[ascii-art]を使用してください。参加者がグラフィックとASCIIアートのどちらかを選択できる場合は、両方のタグを使用します。入力としての画像の場合、[image-processing]を使用します。

4
線を使用して画像を再現する
トゥルーカラーRGBイメージI、描画する最大行数L、および各行の最小mおよび最大Mの長さを取り込むプログラムを作成します。出力画像Oのようなできるだけ見えるとIとを用いて描画さLの間のユークリッド長有する全てがまたはより少ない直線、MおよびMを。 各ラインは単色で、Oの境界内に両方の端点があり、Bresenhamのラインアルゴリズムを使用して描画されている必要があります(ほとんどのグラフィックライブラリは既に対応しています)。個々の線の太さは1ピクセルのみです。 長さ0の行も含め、すべての行は少なくとも1ピクセルを占める必要があります。線は互いに重ねて描画できます。 線を描画する前に、Oの背景を任意の単色に初期化できます(Iに依存する場合があります)。 詳細 OはIと同じ次元である必要があります。 Lは常に非負の整数です。Iの面積よりも大きい場合があります。 mおよびMは、M > = mの非負の浮動小数点数です。2つのピクセル間の距離は、それらの中心間のユークリッド距離です。この距離がm未満またはMより大きい場合、これらのピクセル間の線は許可されません。 ラインはアンチエイリアス処理されるべきではありません。 不透明度とアルファは使用しないでください。 あなたのプログラムは、100万ピクセル未満でLが10,000未満の画像で、最新のコンピューターで実行するのに1時間以上かかることはありません。 テスト画像 もちろん、最も正確または興味深い出力画像を表示する必要があります(LがIのピクセル数の5%から25%の間であり、mおよびMが対角サイズの約10分の1である場合に発生します)。 ここにいくつかのテスト画像があります(オリジナルをクリックしてください)。また、自分で投稿することもできます。 よりシンプルな画像: これは人気コンテストです。最も投票数の多い提出が勝ちです。 ノート 絶対値と同様に、Iの合計ピクセルの割合からLを導出すると役立つ場合があります。例えば、同じことだろうかの8×8画素の画像でした。mとMについても同様のことができます。これは必須ではありません。>>> imageliner I=img.png L=50% m=10 M=20>>> imageliner I=img.png L=32 m=10 M=20img.png 行は境界を越えることができないため、可能な最長の行はIの対角線の長さです。持つMをこれ以上のことは何もかかわらを壊すべきではありません。 当然、mが0で、LがIのピクセル数以上の場合、各ピクセル位置に長さ0の「ライン」を持たせることで、OはIと同じになります。この動作は必須ではありません。 間違いなく、Iの形を再現することは、色を再現することよりも重要です。エッジ検出を検討することもできます。

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を使用できます(通常の生活でのみ動作するはずです)。 興味深いシーケンスやアニメーションを投稿することを強くお勧めします。

30
ASCIIの三角形
あなたの仕事は、ASCII三角形を印刷するプログラムまたは関数を書くことです。次のようになります。 |\ | \ | \ ---- プログラムはn、制約付きの単一の数値入力を受け取ります0 <= n <= 1000。上記の三角形の値はでしたn=3。 ASCIIの三角形にはnバックスラッシュ(\)と垂直バー(|)、n+1行とダッシュ(-)があり、各行には最終的な行のほかに行番号(0から始まる、つまり最初の行は行0)と等しいスペースがあります。 。 例: 入力: 4 出力: |\ | \ | \ | \ ----- 入力: 0 出力: このテストケースでは、出力は空でなければなりません。空白なし。 入力: 1 出力: |\ -- 入力と出力は、私が指定したとおりでなければなりません。 これはcode-golfなので、できるだけ短いコードを目指してください!
30 code-golf  ascii-art  code-golf  rubiks-cube  code-golf  path-finding  maze  regular-expression  code-golf  math  rational-numbers  code-golf  kolmogorov-complexity  graphical-output  code-golf  tips  code-golf  string  permutations  code-golf  sorting  base-conversion  binary  code-golf  tips  basic  code-golf  number  number-theory  fibonacci  code-golf  date  code-golf  restricted-source  quine  file-system  code-golf  code-golf  math  code-golf  ascii-art  code-golf  math  primes  code-golf  code-golf  math  matrix  code-golf  string  math  logic  factorial  code-golf  palindrome  code-golf  quine  stateful  code-golf  interactive  code-golf  board-game  code-golf  math  arithmetic  code-golf  string  code-golf  math  matrix  code-golf  math  abstract-algebra  polynomials  code-golf  date  code-golf  string  array-manipulation  sorting  code-golf  game  code-golf  string  code-golf  ascii-art  decision-problem  code-golf  number  sequence  code-golf  code-golf  code-golf  sequence  fibonacci  code-golf  math  geometry  random  code-golf  code-golf  math  decision-problem  fractal  rational-numbers  code-golf  number  number-theory  code-golf  combinatorics  permutations  card-games  code-golf  math  sequence  array-manipulation  fibonacci  code-golf  sequence  decision-problem  graph-theory  code-golf  ascii-art  parsing  lisp  code-golf  string  math  natural-language  logic  code-golf  math  logic  code-golf  string  alphabet  code-golf  string  code-golf  string 

8
壊れやすいクイン
壊れやすいクイン 壊れやすいクインとは、評価時に単一文字を削除して各サブストリングを作成するというプロパティを満たすクインであり、エラーが発生します。 例えば。プログラムasdfがキネである場合、それが壊れやすいためには、次のプログラムでエラーが発生する必要があります。 sdf adf asf asd プログラム(およびそのすべての部分文字列)は完全に決定的であり、同じ言語である必要があります。無限ループに陥る(つまり、終了に失敗する)プログラムは、最終的にエラーを生成しなくても、このチャレンジの目的で「エラーを生成する」と見なされます。 通常のクイン制限を含む標準的な抜け穴が適用されます(たとえば、独自のソースコードを読み取れない)。 たとえば、print("foo")脆弱ではありません。これらのサブストリングはすべてエラーにする必要があります。 rint("foo") pint("foo") prnt("foo") prit("foo") prin("foo") print"foo") print(foo") print("oo") print("fo") print("fo") print("foo) print("foo" エラーにならないものは次のとおりです。 print("oo") print("fo") print("fo") だから壊れにくいわけではありません。 クインに関する重要な注意事項 コンセンサスによって、可能なすべての馬はこれを満たさなければなりません: プログラムの別の部分をエンコードするプログラムのセクションを識別することが可能でなければなりません。(「異なる」とは、2つの部分が異なる位置に表示されることを意味します。) さらに、クインは直接または間接的に自身のソースにアクセスしてはなりません。 例 JavaScriptのfunction#toStringは「独自のソースコードを読み取る」と考えているため、許可していません。ただし、私がそれを禁止しなかった場合、JavaScriptの壊れやすいクインを次に示します。 f=(n=b=`f=${f}`)=>(a=(n)==`f=${f}`,n=0,a)&(n!=b)?b:q テスター プログラムのソースコードを指定すると、エラーが発生する必要があるすべてのプログラムを生成するプログラムを次に示します。 let f = (s) => [...Array(s.length).keys()].map(i => s.slice(0, i) + s.slice(i + 1)).join("\n"); let …
30 code-golf  quine  code-golf  date  code-golf  sequence  code-golf  sorting  file-system  code-golf  code-golf  ascii-art  hexagonal-grid  code-golf  string  arithmetic  code-golf  code-golf  code-challenge  source-layout  code-golf  ascii-art  cellular-automata  code-golf  string  arithmetic  balanced-string  code-golf  number  primes  code-golf  ascii-art  hexagonal-grid  code-golf  string  code-golf  string  code-golf  sequence  code-golf  ascii-art  code-golf  conversion  hexadecimal  code-challenge  restricted-source  code-golf  math  grid  code-golf  string  ascii-art  code-golf  random  minesweeper  code-golf  ascii-art  kolmogorov-complexity  board-game  scrabble  code-golf  ascii-art  code-golf  math  number-theory  decision-problem  code-golf  string  code-golf  natural-language  code-golf  internet  stack-exchange-api  code-golf  code-golf  conversion  code-golf  string  code-golf  math  arithmetic  code-golf  string  whitespace  code-golf  graphical-output  internet  code-golf  string  code-golf  string  random  permutations  code-golf  string  code-golf  string 

3
ダンクミームジェネレーター
私は自分の画像からくすんだミームを作るのが好きです。しかし、いわゆる「クイックミーム」サイトはすべて、コードが多すぎます。一番辛いミームジェネレーターを作成する唯一の方法は、PPCGのスタッフにゴルフをお願いすることだと気づきました。それで、あなたがしなければならないことの低さをお教えしましょう。 スペック ミームを作成するために、ファイル名、画像オブジェクトなどとして画像を入力として使用します。 次に、上部テキストと下部テキストに2つの文字列を使用します(改行なし)。 5pxの黒のアウトラインでサイズ22pt Impactの白いフォントで画像上のテキストをレンダリングします(Impactがインストールされていると想定できます。 テキストは水平方向の中央に配置する必要があります。 テキストが水平方向に収まると仮定できます。 それぞれのテキストは、上から10ピクセル、下から8ピクセルにする必要があります。 次に、ファイルに保存する、表示するなどして画像を出力します。 これはcode-golfなので、バイト単位の最短コードが勝ちです! ハッピーミーム!

5
冬のシーズンに向けて氷のようなアバター画像を作成する
冬になり、寒くなり始めます(そして、奇妙なカラフルな帽子が現れ始めます...すぐに)。テーマに合うように、アバターの写真やその他の画像をフリーズさせるコードを書きましょう! 入力 このチャレンジへの提出への入力は、画像(フリーズする画像)と数字(後述のしきい値)である必要があります。 言語でサポートされている方法(引数としてのファイルパスまたはURL、クリップボードからの取得、画像のドラッグアンドドロップなど)およびRGBで色を表現するここにリストされている形式で画像を入力できます(代わりにRGBAをサポート/要求できますが、これは必須ではありません)。 プログラムにハードコーディングすることを除き(コマンドライン引数、STDIN、入力ダイアログなど)、任意の方法で番号を入力することができます(例n=10)。画像にファイルパス/ URLを使用する場合は、この方法でも入力する必要があります。 出力 プログラムは、以下の説明に従って画像を処理し、任意の方法で出力する必要があります(ファイルに出力する、画面に表示する、クリップボードに配置するなど)。 説明 送信では、次の3つの手順で画像を処理する必要があります。nあなたのプログラムが画像とともに入力として受け取った番号を指します。 n各ピクセルのR、G、Bの値を、マンハッタンのnピクセル距離内にあるすべてのピクセルの平均R、G、Bの値に置き換えて、範囲外の座標をすべて無視することにより、入力画像に半径のぼかしを適用します。(つまり、Xの差とYの差の合計がより小さいか等しいすべてのピクセルn。) (注:便利な組み込み関数があるため、上の画像にはガウスぼかしを使用しました。そのため、画像が少し異なって見える場合があります。) 各ピクセルをピクセルの距離内のランダムなピクセルに設定しますn/2(「距離」は前のステップと同じ方法で定義されます)。 これは、画像をループし、各ピクセルをこの範囲内のランダムなピクセルに設定することで行う必要があります。そのため、一部のピクセルが完全に消えたり、一部が重複したりする場合があります。 すべての変更を同時に適用する必要があります。つまり、ピクセルの古い値(ステップ1の後、このステップの前)を使用し、ランダムピクセルに設定した後の新しい値は使用しません。 各ピクセルの「青」RGB値に1.5を乗算し、255(またはピクセルのバンドの最大値)に制限して、切り捨てます。 ルール 言語に組み込まれている画像ライブラリ/画像処理関連の機能を使用できます。ただし、説明に記載されている3つの主要なタスクのいずれかを実行する機能は使用できません。たとえば、blur関数を使用することはできませんが、getPixel関数は問題ありません。 これはcode-golfなので、バイト単位の最短コードが勝ちです!

30
賢い人のMira気楼
むかしむかし、Quoraでこの質問/回答を読んでいた FizzBu​​zzテストに合格できないコンピューターサイエンスの学位を持つプログラマーは本当にいますか このコードは明白な答えとして与えられます for i in range(1, 100): if i % 3 == 0 and i % 5 == 0: print "FizzBuzz" elif i % 3 == 0: print "Fizz" elif i % 5 == 0: print "Buzz" else: print i もちろん、FizzBu​​zzは死ぬまでゴルフにかけられましたが、それはこの質問の目的ではありません。あなたはコメントで、4の倍数の印刷「ジャズ」などの追加条件を簡単に追加できるので、この明白な答えは素晴らしいと誰かが言及していることがわかります(同意しません。このスキームを拡張するにはO(2 ** n )コード行。) あなたの挑戦は、仲間によって判断されるようにFizzJazzBuzzの最も美しいバージョンを書くことです。 投票者が考慮すべき事項: ドライ 除算/モジュラス演算の効率 Quoraに関する回答の多くはPythonを使用していましたが、ここではそのような言語の制限はありません。 …
29 popularity-contest  code-challenge  word  popularity-contest  string  grid  language-design  code-golf  source-layout  math  fastest-algorithm  assembly  code-golf  json  code-golf  arithmetic  array-manipulation  code-golf  ascii-art  code-golf  crossword  code-golf  string  restricted-complexity  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  decision-problem  balanced-string  syntax  code-golf  grid  puzzle-solver  hexagonal-grid  code-golf  math  number  sequence  code-golf  string  decision-problem  code-golf  cryptography  king-of-the-hill  code-challenge  fastest-code  code-golf  number  code-golf  code-golf  string  code-golf  cryptography  king-of-the-hill  java  code-golf  number-theory  base-conversion  code-golf  code-golf  array-manipulation  code-golf  array-manipulation  sorting  code-challenge  restricted-source  quine  code-golf  tips  python  king-of-the-hill  code-golf  source-layout  fractal  code-golf  tips  game  king-of-the-hill  path-finding  grid  code-golf  kolmogorov-complexity  natural-language  code-golf  tips  python  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  number  combinatorics  random  integer-partitions  code-golf  string  code-golf  vim  comment  code-golf  combinatorics  counting  code-challenge  rosetta-stone  code-golf  combinatorics  sequence  subsequence  code-golf  code-challenge  restricted-source  primes  printable-ascii  popularity-contest  graphical-output  image-processing 

16
ソースコードの画像を出力します(Quine-a-Quineではありません)
コードゴルフ:ソースコードの画像を印刷します。 必要条件 他の場所に保存され、実行時に取得されるバージョンではなく、ソースコード自体のイメージを出力する必要があります。 コードは、手でコピーして結果を再現できるほど読みやすいものでなければなりません。 任意の画像形式が適用可能です。 ボーナス 複数の出力形式を許可する場合、スコアの-10%。 コードが「真の」馬でもある場合、-15%。すなわち、ソースコードは読み込まれませんが、ソースコードは埋め込まれています(例についてはこちらをご覧ください) コードが厳密なクインの場合は-30%-つまり、コードの画像がプログラムに埋め込まれています(Pietソリューション、私はあなたを見ています)。

18
XOR 2つのモノクロ画像
チャレンジ: 2つの白黒(モノクロ)画像を入力し、最初の画像の各ピクセルと2番目の画像の各ピクセルをxorし、それらを新しい画像に追加して、新しい画像を出力します。 いくつかの説明: 写真のサイズは関係ありません。拡張子/画像形式は関係ありません。拡張機能がデジタル画像の保存に使用されている限り、任意の拡張機能を入力し、任意の拡張機能を出力することができます。また、グラフィックを使用して、たとえば、必要に応じてピクチャボックスに出力を描画することもできます。それ以外の場合は、出力をファイルとして保存します。入力は、画像またはURLへのパスとして取得できます。 ただし、できないことの1つは、I / O配列です。トリプレット(R、G、B)の。 alphaを改ざんしないでください。固定する必要はありません。ピクセルごとに255(最大値)にする必要があります。 各ピクセルのxまたはxとはどういう意味ですか? この方法で行う必要はありませんが、2つのピクセルをxorする1つの方法は、RGB値とxor R1とR2、G1とG2、B1とB2を取得し、その結果を新しい色にすることです。 2色しかないため、明らかに同じ色の場合、結果は(0,0,0)になり、異なる場合(白は255,255,255、黒は0,0,0)になり、結果は次のようになります。 255,255,255になります。 したがって、2つのピクセルが異なる場合、結果は白ピクセルになり、そうでない場合は黒ピクセルになります I / Oの例: 入力1:入力2: 出力: これはコードゴルフなので、最短のコードが優先されます。

2
画像のヒルベルト化
私はヒルベルト曲線が好きです。 この課題のタスクは、画像(すべての辺が2ピクセルの幅である厳密に正方形の画像)を取得し、ジグザグ形式で1行ずつ展開し、擬似ヒルベルト曲線で元に戻すことです。 。 解き明かす 解くには、左上隅のピクセルから始めて、画像の端に到達するまで右に進みます。画像の端に到達したら、次の行に移動し、再び端に到達するまで左に移動し始めます。行を切り替えるたびに行を解き続けて、1つの連続した曲線を取得します。これはヘビのよくプレイされるゲームのように見えるはずです 展開の結果は、すべてのピクセルを1回だけ含むピクセルの順序になります。 レラベリング ピクセルの順序が決まったら、擬似ヒルベルト曲線のパスに従って、新しい同じサイズのキャンバス上でピクセルを再配置します。以下のために2**nサイズの正方形の画像あなたは、擬似ヒルベルト曲線のn番目の反復を使用する必要があります。各ピクセルは、新しいキャンバス上のちょうど1つの場所に配置されます。元々左上のポイント(スネークカーブの開始点)がそのまま残り、右下のポイント(スネークカーブの終了点)が右上に配置されるように、イメージを展開する必要があります。 I / O プログラムまたは関数は、標準的な方法で指定された制約の画像を取り込み、標準的な方法で別の画像を出力する必要があります。 得点 これは、勝ちが最も少ないコードゴルフプログラムです。 例 入力 出力 入力 出力 入力 出力 また、空白の白または単色のイメージでテストして、ピクセルが欠落していないことを確認することをお勧めします。 あなたの答えにあなた自身の結果を含めてください。

1
コードゴルフのアニメーション
いくつかの文字を落とし、コードを削るコードゴルフエントリが表示されたら、横並びのdiffの編集履歴を確認します。見て、学ぶ:) この課題は、最も美しいアニメーションdiffを生成するプログラムを作成することです。 入力は、順序付けられた一連のテキストバージョンになります。 プログラムは、任意のプログラミング言語で作成できます。 プログラムは、特定のプログラミング言語の入力データにプログラム自体を制限することが許可されています。 プログラムは特定の入力データに合わせて調整しないでください。プログラムは汎用で、順序付けられた一連のテキストバージョンで機能する必要があります。 入力のバージョンごとに、バージョンの全文が表示される出力アニメーションに対応する時間が必要です。バージョンステージ間の差分をアニメーション化する必要があり、すべてのバージョンステージが出力に順番に存在している必要があります。これらのキーフレームでは、バージョンサイズを表示する必要があり、視聴者はこれがその時点で見ている完全なバージョンであることを理解する必要があります。 プログラムは、差分の計算にサードパーティのコードを使用することはできません。 構文強調表示の出力はオプションです。プログラムが構文を色付けする場合、サードパーティのコードを使用して色付けすることはできません。 出力は、アニメーションGIFになります。 プログラムは、サードパーティのライブラリを使用してGIFを作成する場合があります。 これは人気コンテストなので、このサイトの人気コンテストの定義に従って、最も投票数の多いエントリが勝ちます。 PythonのndiffとPillowの初歩的なアニメーションGIFサポートを使用し、追加と削除の各ステップをアニメーション化する簡単なスクリプトの例を次に示します。 個人的には、これはかなり悪い仕事だと思います。構文の強調表示は行わず、再配置されたコードチャンクを移動しようとすることも、誰かがライブで編集しているように感じることもありません。また、キーフレームの入力サイズをバイト単位で表示することに関する規則を破り、サードパーティのライブラリを使用して差分を作成します。改善の余地がたくさん! そして、できれば、人気のあるエントリがcodegolf.stackexchange.comコミュニティにとっても便利な楽しいツールになることを願っています。そのため、他の人がプログラムを簡単に実行して使用できるようになれば幸いです。

4
アポロニアのガスケットを描く
3つの相互に接する円が与えられた場合、それら3つすべてに接する2つの円を常に見つけることができます。これら2つはアポロニア円と呼ばれます。アポロニアの円の1つが実際に3つの初期円の周りにあることに注意してください。 3つの接線円から始めて、次のプロセスでアポロニアンガスケットと呼ばれるフラクタルを作成できます。 最初の3つの円を親の円と呼びます 親円の2つのアポロニア円を見つける 各アポロニア円について: 親円の3つのペアの各ペアに対して: アポロニアン円と2つの親円を新しい親円のセットと呼び、ステップ2からやり直します。 たとえば、同じサイズの円から始めて、次のようになります。 ウィキペディアで見つかった画像 必要な表記法がもう1つあります。中心(x、y)の半径rの円がある場合、その曲率をk =±1 / rとして定義できます。通常、kは正ですが、負のkを使用して、ガスケット内の他のすべての円を囲む円を示します(つまり、すべての接線が内側からその円に接触します)。次に、3組の数字で円を指定できます:(k、x * k、y * k)。 この質問の目的のために、正の整数kと有理xおよびyを仮定します。 このようなサークルのその他の例は、Wikipediaの記事に記載されています。 また、この記事には、一体型ガスケットに関する興味深いものがあります(他の面白い点もあります)。 チャレンジ 4つの円の指定が与えられ、それぞれがのようになります(14, 28/35, -112/105)。eval必要に応じて単純に入力できるように、便利なリスト形式と除算演算子を使用できます。4つの円は実際に互いに接しており、最初の円は負の曲率を持っていると仮定できます。これは、他の3つのアポロニア円が既に与えられていることを意味します。有効な入力例のリストについては、チャレンジの下部をご覧ください。 この入力が与えられると、アポロニアンガスケットを描画するプログラムまたは関数を記述します。 関数引数、ARGVまたはSTDINを介して入力を取得し、画面上にフラクタルをレンダリングするか、選択した形式で画像ファイルに書き込むことができます。 結果の画像をラスタライズする場合、各円は少なくとも400ピクセルで、最大の円の周りに20%未満のパディングが必要です。半径が最大入力円の400未満の円、またはピクセルより小さい円のいずれか早い方に到達すると、再帰を停止できます。 完全なディスクではなく、円の輪郭のみを描画する必要がありますが、背景と線の色は任意です。アウトラインは、外側の円の直径の200倍より広くしてはなりません。 これはコードゴルフなので、最短の回答(バイト単位)が勝ちです。 入力例 Wikipediaの記事のすべての不可欠なガスケットは、所定の入力形式に変換されています。 [[-1, 0, 0], [2, 1, 0], [2, -1, 0], [3, 0, 2]] [[-2, 0, 0], [3, 1/2, 0], [6, …

5
ヘビで画像を描く
左、右、または真っ直ぐにしか行けず、交差することができず、画像内のピクセルのグリッドなどの長方形のグリッドを埋める必要がある連続した2次元パスを想像してください。この種の道を蛇と呼びます。 この拡大例は、赤から始まり、紫色になるまで各ステップで色相が約2%増加する10×4グリッドの蛇行を示しています。(黒い線は、進む方向を強調するためのものです。) ゴール この人気コンテストの目標は、色が少しずつ連続的に変化する単一のヘビを使用して、特定の画像を再作成しようとするアルゴリズムを作成することです。 プログラムは、任意のサイズのトゥルーカラーイメージと、0〜1の浮動小数点値(許容誤差)を取り込む必要があります。 許容値は、各ピクセルサイズのステップで変化するスネークの色の最大量を定義します。RGBカラーキューブに配置された場合、2つのRGBカラー間の距離を、2つのRGBポイント間のユークリッド距離として定義します。距離は正規化され、最大距離は1、最小距離は0になります。 色距離擬似コード:(すべての入力値が範囲内の整数であると仮定します[0, 255];出力は正規化されます。) function ColorDistance(r1, g1, b1, r2, g2, b2) d = sqrt((r2 - r1)^2 + (g2 - g1)^2 + (b2 - b1)^2) return d / (255 * sqrt(3)) ヘビの現在の色と別の色でこの関数を呼び出した結果が、指定された許容値よりも大きい場合、ヘビはその別の色に変化しない可能性があります。 必要に応じて、異なる色距離関数を使用できます。http://en.wikipedia.org/wiki/Color_differenceにリストされているような、正確で十分に文書化されたものでなければなりません。また、内に収まるように正規化する必要があります[0, 1]。つまり、可能な最大距離は1、最小は0でなければなりません。異なる距離メトリックを使用する場合は、回答でお知らせください。 テスト画像 もちろん、出力画像(および、必要に応じて成長するヘビのアニメーション)を投稿する必要があります。これらのさまざまな画像を、さまざまな低い許容値(おそらく0.005〜0.03)を使用して投稿することをお勧めします。 (大きな波) 勝利基準 述べたように、これは人気コンテストです。最も高く投票された答えが勝ちます。入力画像の最も正確で審美的に「蛇の道」の描写を提供する回答は、投票する必要があります。 実際にヘビではない画像を悪意を持って送信していることが判明したユーザーは、永久に失格になります。 ノート 使用できるスネークパスは1つだけであり、同じピクセルに2回触れることなく画像を完全に埋める必要があります。 ヘビは画像のどこからでも開始および終了できます。 ヘビはどんな色からでも始まります。 ヘビは画像の境界内に留まる必要があります。境界は循環的ではありません。 ヘビは一度に斜めに移動したり、1ピクセル以上移動したりすることはできません。

6
ネパールの国旗を描きましょう
ネパールの旗(Wikipedia、Numberphile)は、他のものとは非常に異なって見えます。また、特定の描画命令もあります(Wikipediaの記事に含まれています)。ネパールの国旗を描くプログラムを作ってほしい。 ユーザーは、要求されたフラグの高さ(100〜10000ピクセル)を入力し、プログラムはネパールのフラグを出力します。フラグを描画する方法は、ASCIIアートからOpenGLまですべて選択できます。 これは人気のコンテストなので、勝者は2月1日に最も多く投票される回答になるため、コードの長さについては気にしないでください。 要件は1つだけです。Webリソースの使用は許可されていません。 楽しむ :)

8
最短コードでポン
挑戦は簡単です。pong http://en.wikipedia.org/wiki/Pongの古典的な2人用ゲームを再現するために、可能な限り最短のコードを提供します。グラフィックと機能のレベルは、このjavascriptデモンストレーションhttp://codeincomplete.com/posts/2011/5/14/javascript_pong/demo.htmlに可能な限り近い必要があります(ただし、左側にある追加オプションなしでクリックできます)または、右下のフレーム、fpsなどの情報)。 いつものように、コードは(両方の意味で)自由言語で書かれていなければならず、Linuxで実行可能でなければなりません。また、使用するライブラリはすべて無料で、簡単に入手でき、このコンペティションの目的で作成されてはなりません(また、Pongの作業バージョンがまだ含まれていない必要があります!)。

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