この逸話には、次の興味深い交換が含まれています。
「ファイン、フレッド」アヴィは割り込んだ。「では、エントリの重複を避けるためにこれをどのように変更しますか?」
「あそこのネガティブなものに変えてください。」
この主張は文脈では正確ではありませんが、理にかなっているもっともらしいコードがあるのではないかと思います。
あなたの挑戦は、この基準に適合するコード(プログラム、関数など)を書くことです。
- 2つの入力リストを1つにマージし、重複を保持します。[編集:オプションで、それらが整数であること、および/またはリスト自体が一意であると仮定することができます。整数が正であると仮定することはできません(これを行う1つの答えは祖父です)。]
- リテラル「1」はコードのどこかに表示されます。これをリテラル「-1」に変更すると、コードは同じことを行いますが、重複を削除します。
- コードは単に1 / -1から分岐しません。たとえば、
if (1 < 1) removeDuplicates()またはを探していません[do_nothing, merge_with_dups, merge_without_dups][1].call()。
入力および出力は、選択した任意の妥当な形式にすることができます。一例は
[1,2],[2,3]->[1,2,2,3]符号が変わる前と[1,2,3]後。
これは人気コンテストです。あなたが自慢したいのでなければ、それはコードゴルフではありません。約2週間以内に最高投票数の回答を受け入れます。
-1場合、それらを削除する必要がありますか?