SyntaxHighlighter

2012年4月11日水曜日

贅沢なプログラミング

課題。
・要素の重複の無い
・ソート済みの
・2つの配列を
・重複が無いようにマージしたものを出力する
・片方の配列のサイズは100万位

自分は先月までC++erだったので、
・重複の範囲(先頭)を探す
・そこから先を連結する
というのが最も自然で高速だと思っていた。

でも、こういうのって、些細なミスで1つの要素が欠けたり、重複したりする可能性もあると思う。

でも、C#で楽なやり方だと
・要素が含まれてなければ適当に追加する
・ソートする
…見たいな感じで、しかもミスする要素が無い。
100万個くらいなら一瞬で終わるし、テストするまでもない。

もっと言うと、C#風だと前提条件の
・要素の重複の無い
・sort済みの
という条件は無くてもいい。

C#風とか勝手に言ってるけど、勝手に思ってるだけかもしれない。


入力の条件は緩くて、出力の条件は厳しいというのが楽。
なんでもかんでも放り込んで、でも何故かちゃんと結果が返ってくる、みたいな概念。

0 件のコメント:

コメントを投稿