タグ付けされた質問 「image-processing」

これらの課題には、既存の画像ファイルを何らかの方法で変更したり、統計を収集したり、その他の画像処理タスクを実行したりすることによる処理が含まれます。

2
レプトン圧縮を阻止する
Dropboxは最近、レプトン(GitHub)をリリースしました。これは、往復でJPEG画像を無損失で圧縮し、平均22%を節約する方法です。 そのための鳩の巣原理、任意の一般的な圧縮アルゴリズムをすることはできません保証(小さいファイルをもたらすために、一般的には、特定の形式に制約の入力には適用されないため)。LeptonはJPEGに関する一般的な特性を利用します。JPEGは、破壊された場合、ソースよりも大きいファイルを生成するためにそれをピジョンホールする可能性があります。 必要条件 以下を生成するプログラムを作成します。 有効なJPEG / JFIF画像、 0.5 MB〜1 MBのサイズで、 256×256 px以上 4096×4096 px以下 レプトンが認識できる(.lep画像に正常に「圧縮」できる) (入力として)同一に 解凍し.jpgます。 APPx、COMおよびその他のメタデータ、非グラフィックマーカーセクションはJPEGで制限されています(ランダムな量の任意のバイトを画像に注入して、1:1圧縮に漸近的に近づくことは不十分です)。 APP0JFIFマーカーは(正確に16バイトでなければならない)、許可されているが、サムネイルが許可されません tl; dr意図的にメタデータをEXIFセグメントに押し込んでおらず、選択した言語ライブラリが画像に配置したいサムネイルを無効にしている場合、それは問題ありません。 コードと画像を投稿してください。 変換すると基準を満たすJPEG が生成されるLeptonイメージを生成するプログラムを作成する場合は、問題ありません。任意の多くのJPEG→Lepton→JPEG→...サイクルにわたって同一のままでなければなりません。 得点 ソースJPEG画像で割ったレプトン画像のバイトサイズ。高い(レプトン圧縮が悪い)ほど優れています。デフォルトのフラグとスイッチでレプトンを実行します。 レプトンを取得する レプトンを構築する5秒間のクラッシュコース: git clone https://github.com/dropbox/lepton.git cd lepton ./autogen.sh && ./configure && make # fish shell: ./autogen.sh ;and ./configure ;and make その後./lepton --help、あなたに物事を伝える必要があります。

3
文字列内のパターンを検索
この挑戦では、あなたの仕事は、与えられた構造を持つ部分文字列を見つけることです。 入力 入力は、空ではない2つの英数字文字列、パターン p、およびテキスト tです。の考え方は、の各文字がp連続して空でない部分文字列を表し、その部分文字列tが隣り合って出現し、pそれらの連結を表すことです。同一の文字は同一の部分文字列に対応します。たとえば、パターンaaは空でない正方形(短い文字列をそれ自体に連結することによって取得される文字列)を表します。したがって、パターンaaは部分文字列byebyeとa一致し、それぞれ一致しbyeます。 出力 テキストtにp一致する部分文字列が含まれている場合、出力はその部分文字列になり、の文字に:対応する文字列の間にコロンが挿入されますp。例えば、我々が持っている場合t = byebyenowとp = aa、その後、bye:bye許容出力されます。一致する部分文字列にはいくつかの選択肢がありますが、そのうちの1つだけを出力します。 t一致する部分文字列が含まれていない場合、出力は悲しい顔になり:(ます。 規則と説明 の異なる文字はp同一の部分文字列に対応できるためp = aba、文字列と一致できますAAA。文字は空でない文字列に対応する必要があることに注意してください。特に、pがより長い場合t、出力はでなければなりません:(。 完全なプログラムまたは関数を記述できます。また、2つの入力の順序を変更することもできます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 形式で与えられますpattern text -> output。他の受け入れ可能な出力が存在する可能性があることに注意してください。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

6
画像の色相をトレースする
このスタックスニペットに画像をロードし、マウスをその上に移動します。カーソルポイントから始まる、色相角に続く黒い曲線が描画されます。 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><style>canvas{border:1px solid black;}</style>Load an image: <input type='file' onchange='load(this)'><br><br>Max length <input id='length' type='text' value='300'><br><br><div id='coords'></div><br><canvas id='c' width='100' height='100'>Your browser doesn't support the HTML5 canvas tag.</canvas><script>function load(t){if(t.files&&t.files[0]){var e=new FileReader;e.onload=setupImage,e.readAsDataURL(t.files[0])}}function setupImage(t){function e(t){t.attr("width",img.width),t.attr("height",img.height);var e=t[0].getContext("2d");return e.drawImage(img,0,0),e}img=$("<img>").attr("src",t.target.result)[0],ctx=e($("#c")),ctxRead=e($("<canvas>"))}function findPos(t){var e=0,a=0;if(t.offsetParent){do e+=t.offsetLeft,a+=t.offsetTop;while(t=t.offsetParent);return{x:e,y:a}}return void 0}$("#c").mousemove(function(t){function e(t,e){var a=ctxRead.getImageData(t,e,1,1).data,i=a[0]/255,r=a[1]/255,o=a[2]/255;return Math.atan2(Math.sqrt(3)*(r-o),2*i-r-o)}if("undefined"!=typeof img){var a=findPos(this),i=t.pageX-a.x,r=t.pageY-a.y;$("#coords").html("x = "+i.toString()+", y = "+r.toString());var o=parseInt($("#length").val());if(isNaN(o))return void …

20
数字を分解してください!
あなたの仕事は、以下の形式を使用して数値を分解することです。 これはベース変換に似ていdigitsますが、ベースにリストする代わりに、リストをvalues入力に追加するようにリストします。 指定されたベースがの場合、nリスト内の各数値はの形式である必要があります。k*(n**m)ここで0<=k<nおよびmはリスト全体で一意です。 スペック 合理的な入力/出力フォーマット。プログラム/関数は2つの入力を受け取り、リストを出力します。 出力リストの順序は任意です。 0 除外または含めることができます。 リード0は許可されます。 組み込みが許可されます。 テストケース number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 得点 これはcode-golfです。バイト単位の最短ソリューションが優先されます。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

4
アメリカ(nマップ)を再び偉大にする
新しいボーナス!(下記参照) 米国共和党の大統領候補であるベンカーソンの地図作成チームは、地図に問題を抱えています(ワシントンポスト経由の画像)。 問題は、彼らがJob™に適したツールを持っていないことです。彼らは可能な限り最もコンパクトで信頼性の高いプログラムを必要としているので、再びマップを作成することを心配する必要はありません。それが彼らがあなたを雇った理由です。このマップを取得して、目的の色で再度出力する必要があります。 Theshibboleth [GFDL(http://www.gnu.org/copyleft/fdl.html)またはCC-BY-SA-3.0(http://creativecommons.org/licenses/by-sa/3.0/)]により、ウィキメディアコモンズ すべての州がどこにあるかわからない場合(あなたがアメリカ人ではない...またはあなたがアメリカ人であるため)、ここにすべての名前の地図があります(このチャレンジにはワシントンDCは必要ありません): 「州名2の米国の地図」。ウィキメディアコモンズを介してCC BY-SA 3.0でライセンス供与-https ://commons.wikimedia.org/wiki/File: Map_of_USA_with_state_names_2.svg#/ media/File:Map_of_USA_with_state_names_2.svg たとえば、入力がの場合Ohio, Indiana, Illinois;New York, New Jersey, Florida、次を出力します。 空白のマップ画像は、SVGおよびPNG形式で利用できます。便宜上、アルファベット順に50の州すべてのリストを示します これは、コードゴルフとグラフィック出力の課題です。出力はSVGまたは画像ファイルである必要があります。画面に出力を表示するだけでは不十分です。入力は、STDINから取得するか、テキストファイルを読み取る必要があります。入力をフォーマットする方法には柔軟性がありますが、各状態の完全な名前を含む必要があり、赤(共和党)状態が最初にリストされ、青(民主党)状態が次にリストされます。着色には、赤と青の2つの異なる色合いを使用できます。もちろん、空のマップイメージを、プログラムと同じフォルダーに任意のファイル名で配置できます。 精度基準 出力がラスターファイルの場合、少なくとも800x495ピクセルである必要があります。また、SVGを同じサイズに1.5ピクセル以上拡大した結果から行が逸脱してはなりません。出力がベクターファイルの場合、両方が800px x 495pxにスケーリングされたときに、線がSVGから1.5ピクセル以上ずれてはなりません。 ボーナス! ベンは外国の図書館への依存を削減しようとしています。現在、地図のラスターグラフィックバージョンのみを入力として使用し、地域検出用の独自のアルゴリズムを作成するすべてのユーザーに-50%のボーナスを提供しています。最終的に、あなたのアプローチが「独自の書き込み」アルゴリズムとしてカウントされるかどうかを判断するのは私の判断です。 幸運を!

1
シュートアピアリング
梨とスチール シュートの 5つの画像を次に示します。 A:B:C:D:E: これらはサムネイルのみです。クリックするとフルサイズになります。 (Algodooで作成しました。) このクラスの画像には、常に次のプロパティがあります。 背景は常に400×400ピクセルです。(SEイメージは非可逆圧縮されるため、完全に白ではない場合があります。) それらは1〜4個の同一の梨を持ち、それぞれが(ほぼ)任意の方法で回転して配置されます。 彼らは、画像の下部に到達する1つの垂直スチールシュートを持っています。 シュートの下部を除いて、シュートと梨の境界ボックス(境界ボックスの例)は決して画像境界に触れたり、境界から出たりすることはありません。 梨のバウンディングボックスが互いに重なることも、シュートと重なることもありません。 B、C、およびDのように、梨はシュートの傾斜部分の下にある場合があります。(したがって、シュートのバウンディングボックスはナシのバウンディングボックスと重なる場合があります。) シュートは、ナシのすべてのバウンディングボックスがその上に自由に収まるだけの十分なスペースがあり(「ベアフィット」ケースはテストされない)、コラム部分の一部が見える限り、任意の水平および垂直位置にできます。 チャレンジ そのような画像を取り込み、同じ場所にシュートがある別の400×400画像を出力するプログラムを作成しますが、梨はすべてシュートの上にくるように再配置されます(そうすれば、それらはシュートに落ちてジュースになります)。 出力イメージの要件は次のとおりです。 入力画像内のすべての梨は、シュートの上、漏斗の左端と右端の間にあるように再配置する必要があります。(エッジを超えることはできません。) 各ナシは、回転角度を維持する必要があります。(したがって、梨を切り直して貼り付けるのではなく、梨を切り取って貼り付ける必要があります。) 梨は互いに重なり合ったり、互いに触れたり、シュートに触れたりしてはなりません。(ただし、梨の境界ボックスは重なる場合があります。) 梨が触れたり、画像の境界から出たりしてはいけません。 5つのサンプル画像の有効な出力の例を次に示します。 A:B:C:D:E: これらはサムネイルのみです。クリックするとフルサイズになります。 Eの入力画像はすでに有効な出力でしたが、技術的に必要ないときに梨を再配置するだけで十分であることに注意してください。 詳細 stdin /コマンドライン/関数呼び出しを使用して、画像のファイル名または生の画像データを取得します。 選択した名前のファイルに画像を出力するか、生の画像ファイルデータを標準出力に出力するか、単に画像を表示します。 一般的なロスレス画像ファイル形式を使用できます。 グラフィックおよび画像ライブラリを使用できます。 あちこちにあるいくつかの不正確なピクセル(損失など)が大したことではありません。視覚的に間違っていることがわからない場合は、おそらく大丈夫です。 バイト単位の最短コードが優先されます。Tiebreakerは、最も投票数の多い投稿です。

3
あなたはそれをセンタリングと呼びます、私はそれをコードゴルフと呼びます
「それでは、並べられた画像は天国からの小さな贈り物のようなものです。ようこそ、しかし予期せぬことです。」-ジオビット このチャレンジに勝った人には+10000の評判。 ルール: 1)プログラムを生成します。 2)入力は画像になりますが、ファイルとして渡されるか数字のリストとして渡されるかはユーザー次第です。 3)出力は、ペイント(または同様の)で開くと、画像が整列して表示されるファイルです。 4)キャンバスのサイズは常に100 x 100から2000 x 2000ピクセルの間です。常に長方形になりますが、常に正方形になるとは限りません。 5)画像のハードコーディングやファンキーなURLマジックはありません。 6)使用する外部ライブラリはありません。 集中化ガイド(Joshpbarron Variant) 軸上の最初の白(255,255,255、> 0 rgba)または透明(x、y、z、0 rgba)がキャンバスの端から等しい距離(プラスまたはマイナス1ピクセル)の場合、画像は中央にあると定義されます。 これは、次の方法で実現できます(検証されます)。 1)オブジェクトの周りの境界ボックスを想像してください。(ヘルプのために黒い線が追加されました) 2)オブジェクトの端がキャンバスの適切な端から等距離になるまでオブジェクトを移動します。 3)黒い線を忘れます。 入力: 出力: その他の入力はこちら。 ここでそれぞれの出力。 +10000担当者は嘘です。

5
モンドリアン絵画記述言語
この課題は、モンドリアン絵画記述言語(MPDL)のインタープリターのコーディングにあります。 言語定義 この言語は、長方形のスタックで動作します。長方形は、左上の座標と右下の座標で定義されます。座標は整数でなければなりません。スタックは、属性を持つ単一の長方形で初期化されます(1,1,254,254) 各コマンドの形式は次のとおりです。 <character><integer> 次の3つのコマンドがあります。 v<integer>:スタック内の最新の長方形で、パラメーターで示された位置(パーセンテージ)で垂直分割を実行します。ソースの長方形はスタックから削除され、分割の結果の2つの新しい長方形に置き換えられます。左の長方形がスタックにプッシュされ、次に右の長方形がプッシュされます。長方形の座標は整数であるため、分数は最も小さい整数に丸められる必要があります。 h<integer>:水平分割。上の長方形がスタックにプッシュされ、次に下の長方形がプッシュされます。 c<integer>:スタックから最新の長方形を削除し、パラメーターとして指定された色にペイントします。1 =白、2 =赤、3 =青、4 =黄 チャレンジ パラメータとしてペイントの説明を取り、ペイントされた長方形の256x256ビットマップ表現を作成するプログラムを作成します。長方形は、3ピクセルの黒い線で区切る必要があります。1ピクセルまたは2ピクセルの長方形は、黒以外のピクセルを境界線の黒ピクセルで非表示にする必要があります。 入力は、パラメータまたはファイルとして読み取ることができます。コマンドはスペースで区切る必要があります。入力ファイルには正しい構文があり、末尾または先頭のスペース、タブなどがないと仮定できます。出力は、画面に直接表示するか、ファイルを自分で保存できます。 最短のコードが優先されます。 テスト 次のソース: v25 h71 v93 h50 c4 c1 c1 c2 h71 c3 h44 c1 c1 赤、青、黄色のコンポジションIIを生成する必要があります。

4
ナイトフィルグリッド
ナイトフィルは、ナイトチェスの駒の接続性を使用したフラッドフィルです。具体的には: 1 1 1 1 0 1 1 1 1 (0は初期点、1は接続されたセルを示します) チャレンジ スペースと壁の2Dグリッドと初期位置を指定して、グリッドでナイトフィルを実行します。最短のコードが優先されます。 ルール 入力を受け取り、任意の形式(イメージ、文字列、配列など)で出力を生成できます。入力グリッドの一部として、または別の座標として初期位置を取得できます。この説明のために、次の形式が使用されます。 ######## # = wall ######## x = initial location ## x ## ## ## ######## ## ## ######## ######## 出力は、ナイトフィルの結果が追加された入力グリッドのコピーです 塗りつぶしは、スペースや壁と同じ「色」であってはなりませんが、初期位置マーカーと同じにすることができます。たとえば、上の画像の場合、有効な出力は次のようになります。 ######## # = wall ######## @ = fill (could also have been x) ## …

2
画像を鈍らせる
前書き 鋭いエッジは、率直に言って、単に危険なので、PNGを入力として、以下に説明する方法を使用して画像をぼかし、それらのとがった鋭いエッジを鈍らせます。 方法 各ピクセルのRGB値を取得するには、次の3つの式を使用します。 R = 1.5 × ∑na = 1R2an−−−−−−−−−−−−√R=1.5×∑a=1nRa2nR = \sqrt{\frac{1.5\times\sum^n_{a=1}R^2_a}{n}} G = 1.5 × ∑na = 1G2an−−−−−−−−−−−−√G=1.5×∑a=1nGa2nG = \sqrt{\frac{1.5\times\sum^n_{a=1}G^2_a}{n}} B = 1.5 × ∑na = 1B2an−−−−−−−−−−−−√B=1.5×∑a=1nBa2nB = \sqrt{\frac{1.5\times\sum^n_{a=1}B^2_a}{n}} ここで、∑na = 1R2a∑a=1nRa2\sum^n_{a=1}R^2_aは、隣接する各ピクセルの赤の値の2乗の合計です。nnnの値は、隣接するピクセルの数です(たとえば、コーナーピクセルのnnn値は3で、画像の中心付近のピクセルのnnn値は8です)。 隣接するピクセルとは、すべての方向(左、右、上、下、およびすべての対角線)で元のピクセルから1ピクセル離れたピクセルです。 たとえば、次の3 x 1の画像では: 中央のピクセルのぼやけたRGB値は次のようになります。 R = 1.5 ∗ (02+ 02)2−−−−−−−−−−−−√= 0R=1.5∗(02+02)2=0R = \sqrt{\frac{1.5*(0^2+0^2)}{2}} = 0 …

2
画像のかくれんぼ
この課題では、写真(実際のカメラで撮影)内の特定のピクセルを見つける必要があります。 (R、G、B)タプルと画像が渡され、指定されたRGBカラーに一致する画像内のポイント(x、y)を返す必要があります。画像には、色と一致する複数のポイントがある場合があります。あなただけを見つける必要があります1。 課題は、あなたがそれを行う必要があるということですできるだけ少数の画素として読みながら。スコアは、すべてのテストケースで読み取られたピクセルの総数になります。 必要に応じて、ピクセルで処理を行わない限り、画像全体をRGB値の配列に読み込むことができます。これは純粋に効率化の目的で許可しています。たとえば、Pythonではlist(Image.open("image_name+".jpg").convert("RGB").getdata())大丈夫です。 場所のハードコーディングは許可されていません。アルゴリズムは、以下にリストされているテストケース以外にも機能するはずです。テストケース間でデータを保存することはできません。<10画像にまれにしか表示されないRGB値()を選択しました(アルゴリズムに違いがある場合)。アルゴリズムでランダム性を使用している場合、スコアが一定になるようにシードを設定してください。 画像はGithubにあります テストケース: image_name: (r, g, b) [all possible answers] barn: (143,91,33) [(887,1096),(2226,1397),(2007,1402),(2161,1508),(1187,1702)] (53,35,59) [(1999,1260)] (20,24,27) [(1328,1087),(154,1271)] (167,148,176) [(1748,1204)] (137,50,7) [(596,1498)] (116,95,94) [(1340,1123)] (72,49,59) [(1344,857),(1345,858),(1380,926),(1405,974),(1480,1117)] (211,163,175) [(1963,745)] (30,20,0) [(1609,1462),(1133,1477),(1908,1632)] (88,36,23) [(543,1494),(431,1575)] daisy: (21,57,91) [(1440,1935),(2832,2090),(2232,2130),(1877,2131),(1890,2132)] (201,175,140) [(1537,1749),(2319,1757)] (169,160,0) [(2124,759)] (113,123,114) [(1012,994),(2134,1060),(1803,1183),(1119,1335)] (225,226,231) [(3207,829),(3256,889),(3257,889),(1434,981),(2599,1118),(2656,1348),(2656,1351)] (17,62,117) [(2514,3874),(2336,3885)] (226,225,204) [(3209,812)] …

18
PNG画像を反転
ファイル名を引数として使用するか、標準入力からファイル名を読み取り、次のタスクを完了するプログラムまたは関数を作成します。 PNGファイル(引数として指定された名前)から画像を読み取ります。 その画像の色を反転して、たとえば、濃い緑(0、75、30)が(255、180、225)になるようにします(255-0 = 255、255-75 = 180および255-30 = 225のため)。アルファチャネル値を変更しないでください。 その画像をa.png(png形式で)というファイルに出力するか、GUIウィンドウに表示します。 これは、コードゴルフ。標準の抜け穴が適用されます。

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 

4
10、10、10…いいですか?
序文 私が今日アーチェリー900ラウンドを撮影していたとき(10が6矢印で終わり、10が3矢印で終わり、合計90の矢印と最大スコア900)、この挑戦​​を考えました。 アーチェリー(FITAが提供するターゲットフェース [あなたが撃つ紙)で射撃していると仮定すると、]矢印ごとに最大スコア10を獲得できます。ターゲットフェースには直径が10から11のリングが含まれ、互いに入れ子になっています。内側のリングから外側に向かって、10ポイントから1ポイントまでカウントされます(11リングの場合、「X」としてカウントされる2番目の最も内側のリングがあります。より高い値)。観察する: もちろん、上の図に見られるように、FITAメトリックスコアリングを参照しています。よく見ると、最も内側のリングが見えます。これは色あせた点線で、スコアはマークされていません。それが私が言っていた「X」ですが、ボーナスを競わない限り、それに注意を払う必要はありません。 チャレンジ 入力として完全に正方形の画像(または必要に応じて画像ファイル名)を受け取る関数(または言語が関数をサポートしない場合は完全なプログラム)を作成し、いくつかの緑(HEX#00FF00、RGB(0、 255、0))いくつかのサイズのドット、およびスコアを返します。画像には緑の点以外のデータが含まれている場合がありますが、緑は常にまったく同じ色合いになります。 正方形の画像がターゲットの顔を表しており、最も外側のリングが4つのポイント(上中央、下中央、右中央、左中央)に接触していると想像できます。表現されたターゲット面は常に同じ比率で、すべてのリングの幅は入力ターゲット画像の幅のちょうど1/20になります。例として、入力寸法が400px x 400pxの入力画像が与えられた場合、以下に示すように、各リングの内側の幅は20pxであると想定できます。 明確化 2つの別々のリングに触れると、2つのリングのうち高い方がカウントされます ボーナスを試す場合を除き、ミスや「x」ケースを自動的に考慮する必要はありません。 あなたは緑の円が重なっていないと仮定することができます また、その緑の色合いの他のピクセルが画像にないことを仮定することができます 画像はPNG、JPEG、またはPPM形式のいずれかです(選択) この質問の投稿前に作成された場合、外部画像処理ライブラリが許可されます 1つのターゲット上のすべての緑色の円の直径が同じであると仮定できます 重複する円のボーナスを撮影する場合(hah)、画像内の少なくとも1つの円に別の重複する円がないと仮定できます。 標準的な抜け穴は許可されていません テストケース 次の2つのケースでは、それぞれ52を獲得する必要があります(または、ボーナスの場合は、1 'x'と1ミスの52)。 そして、この最後のテストケースは25を記録する必要があります。 ボーナス ミスの数(リングの外)も返す場合は-25バイト Xの量も返す場合は-30バイト(最も内側のxが画像の幅の3/100であり、10が画像の幅の2/100であると仮定します。1-9の比率は変更されません) 重複する円を考慮した場合、-35%バイトカウント これはコードゴルフであるため、最小バイトが勝ちます。楽しんで!

5
ASCIIアート番号を認識する
チャレンジ ASCIIアート番号を認識します。物事を面白くするために、画像内の3つのランダムなポイントを反転させることができます。例えば: ***** * ** ** ** ** ** 入力 以下のPythonスクリプトによって生成された7x7 ASCIIアート番号。 出力 数字。 テストスクリプト テストケースを生成するPythonスクリプト(2.6以降)は次のとおりです。 import random digits = '''\ *** ** ** ** ** ** ** ** ** ** ** *** * *** * * * * ***** *** * ** * ** ** ** ****** *** * …

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