子供はオブジェクトを分類して数えるのがとても上手です。コンピュータはもっと問題があるようです。これは、この問題の簡略版です。画像内のオブジェクトを分類およびカウントできる小さなプログラムを作成できますか?
問題:1つ以上の円と四角形を含む画像が与えられた場合、円の数と四角形の数を含む2つの整数を返します。
ルール
- 入力画像は、選択したビットマップ形式の白い背景に黒い数字になります。
- 画像の幅と高さは100〜1000ピクセルです。
- 図は画像内に完全に含まれます。
- 図の線幅は1ピクセルです。
- 画像はアンチエイリアスを使用しません。白のみに黒になります。
- 図形は、接触したり、交差したり、別の図形の中にある場合があります。
- 交差する図形には、最大4つの共通ピクセルがあります。
- 円の直径は20ピクセル以上になります。
- 長方形の辺の長さは10ピクセル以上になります。
- 形状を認識する組み込み関数やライブラリ、またはこの課題を簡単にする他の関数を使用することはできません。
- 円と長方形の数を含む2つの整数を返すか、出力します。
例1
回答:3 4
例2:
正解:4 13
これはコードゴルフの挑戦なので、各言語で最短のプログラムまたは機能が勝ちます。
四角形を数えることは、角を数えることですが、円はもっと難しいでしょう。
—
バーリント