Ini dimaksudkan untuk menjadi golf kode yang mudah dan seukuran gigitan.
The mex (minimal jumlah dikecualikan) dari koleksi terbatas angka adalah yang terkecil bilangan bulat non-negatif 0, 1, 2, 3, 4, ...
yang tidak tidak muncul dalam koleksi. Dengan kata lain, ini adalah minimum dari komplemen. Operasi mex merupakan pusat analisis game yang tidak memihak dalam teori permainan kombinatorial .
Tujuan Anda adalah untuk menulis program atau fungsi bernama untuk menghitung mex menggunakan sesedikit mungkin byte.
Memasukkan:
Daftar bilangan bulat non-negatif dalam urutan apa pun. Dapat berisi pengulangan. Untuk konkret, panjang daftar dan rentang elemen yang diizinkan akan berada di antara 0
dan 20
inklusif.
Definisi "daftar" di sini fleksibel. Setiap struktur yang mewakili kumpulan angka baik-baik saja, asalkan memiliki urutan elemen tetap dan memungkinkan pengulangan. Itu mungkin tidak termasuk informasi tambahan apa pun kecuali panjangnya.
Input dapat diambil sebagai argumen fungsi atau melalui STDIN.
Keluaran
Nomor terkecil yang dikecualikan. Keluarkan atau cetak.
Uji kasus
[1]
0
[0]
1
[2, 0]
1
[3, 1, 0, 1, 3, 3]
2
[]
0
[1, 2, 3]
0
[5, 4, 1, 5, 4, 8, 2, 1, 5, 4, 0, 7, 7]
3
[3, 2, 1, 0]
4
[0, 0, 1, 1, 2, 2, 3]
4
[1, 0, 7, 6, 3, 11, 15, 1, 9, 2, 3, 1, 5, 2, 3, 4, 6, 8, 1, 18]
10
0
untuk 20
, output yang benar adalah 21. Saya akan menambahkan kasus uji. Ya, rentang tetap pasti membuatnya lebih mudah, meskipun orang masih bisa menggunakan sys.maxint
atau 2**64
jika saya tidak menentukannya.