1つ以上のバグがあるように見える数字のベクトル(または任意のタイプの要素)をソートするプログラムを作成しますが、実際には問題ありません。
- コードは明確でなければなりません。コードを見ている人は、それがソートアルゴリズムであることを簡単に識別し、正しいコードとバグを簡単に混同しなければなりません。
- (明らかな)バグは、コードを構文的または意味的に不正な形式にする(たとえば、プログラムをコンパイル/実行しない、実行時にUBを表示する)、プログラムが不正な結果を生成する、終了しない、または非決定的とすることができます。
- コードは実際に整形式である必要があり、プログラムは有限時間で決定論的に正しい出力を生成する必要があります。
- 入力は、プログラムにハードコーディングするか、(ユーザー、ファイルなどから)読み取ることができます。
- 入力は有効と見なされ、プログラムは入力の正確性を検証する必要はありません。
- ソートアルゴリズムはすべて受け入れられます。数値を保持するデータ構造は、実際のベクトルである必要はありません。プログラムは、可変数の数字または固定数の数字をソートするように設計できます(たとえば、3つの数字をソートするプログラムは大丈夫です)。ソートは安定している場合とそうでない場合があります(注:ソートが不安定に見える明らかなバグがある安定したソートを行うように設計されたプログラムですが、実際にはバグではありません:プログラムは実際に安定したソートを行います—有効な答えです)。
- サードパーティのツールを除くすべての関数(並べ替え関数を含む)を呼び出すことができます(広く普及して使用されている場合を除き、たとえば
boos
、forC++
、JQuery
for 、Javascript
それらは使用可能です)。 - 言語を指定する
- バグのように見える部分をコードでコメントします。
- バグが間違っているように見えるものを説明します。
- なぜそれが実際にバグではないのかを(ネタバレボックスに)説明してください。
これは人気コンテストです。投票数が最も多い答えが勝ちです。
この挑戦は終わりました。勝者は8票の@Clueless /codegolf//a/30190/11400です。すべての提出者に感謝します!
受賞者の受賞後に参加したい場合は、お気軽に新しい回答を追加してください。あなたはレースに参加していませんが、興味深い答えを見ることに興味があります。