Anekdot ini berisi pertukaran yang menarik berikut:
"Baik, Fred," potong Avi. "Lalu bagaimana kamu akan mengubah ini untuk menghindari duplikat entri?"
"Oh, ubah saja yang di sana menjadi negatif."
Meskipun klaim ini tidak akurat dalam konteks, saya bertanya-tanya apakah ada beberapa kode yang masuk akal yang masuk akal.
Tantangan Anda adalah menulis kode (program, fungsi, apa pun) yang sesuai dengan kriteria ini:
- Menggabungkan dua daftar input menjadi satu, menjaga duplikat. [sunting: Anda dapat secara opsional menganggap bahwa mereka adalah bilangan bulat, dan / atau daftar itu sendiri unik. Anda tidak dapat menganggap bilangan bulat itu positif (satu jawaban yang melakukannya adalah kakek).]
- "1" literal muncul di suatu tempat dalam kode. Jika Anda mengubahnya ke literal "-1", kode melakukan hal yang sama tetapi menghapus duplikat.
- Kode tidak hanya bercabang dari 1 / -1. Kami tidak mencari
if (1 < 1) removeDuplicates()
atau[do_nothing, merge_with_dups, merge_without_dups][1].call()
, misalnya.
Input dan output dapat dalam format apa pun yang Anda pilih. Salah satu contohnya mungkin
[1,2],[2,3]->[1,2,2,3]
sebelum tanda berubah, dan [1,2,3]
setelah.
Ini adalah kontes popularitas. Ini bukan kode golf , kecuali jika Anda ingin pamer. Saya akan menerima jawaban dengan suara tertinggi dalam waktu sekitar dua minggu.
-1
kasus ini?