Kami mendefinisikan peta sebagai satu set pasangan nilai kunci. Untuk tantangan ini, Anda perlu mengambil masing-masing nilai dan menetapkannya ke kunci yang dipilih secara acak.
- Anda harus mengacak nilai secara acak, dan mengeluarkan peta yang dihasilkan. Ini berarti bahwa setiap kali kami menjalankan program Anda, kami memiliki peluang untuk mendapatkan hasil yang berbeda
- Setiap permutasi yang mungkin dari nilai harus memiliki peluang yang tidak nol untuk muncul.
- Semua kunci asli dan nilai asli harus muncul di array yang dihasilkan. Nilai yang berulang harus muncul beberapa kali dalam array yang dihasilkan.
Misalnya, jika peta Anda adalah:
[0:10, 1:10, 5:5]
semua yang berikut ini harus memiliki peluang tampil:
[0:10, 1:10, 5:5] (original map)
[0:10, 1:5, 5:10]
[0:10, 1:10, 5:5] (technically the same map, but I swapped the two tens)
[0:10, 1:5, 5:10]
[0:5, 1:10, 5:10]
[0:5, 1:10, 5:10]
Input / output yang dapat diterima:
- Peta asli bahasa Anda
- Anda dapat memasukkan berbagai pasangan nilai kunci. Anda tidak boleh memasukkan 2 array, satu dengan kunci, lainnya dengan nilai.
- Anda dapat menggunakan representasi string apa pun di atas
- Jika Anda memasukkan array atau peta, Anda dapat memodifikasi objek asli alih-alih kembali
- Jenis input harus sesuai dengan tipe output
- Jika Anda memasukkan array, urutan tombol harus dipertahankan.
- Anda dapat mengasumsikan bahwa kunci itu unik, tetapi Anda tidak dapat mengasumsikan bahwa nilainya unik.
Ini adalah kode-golf , jadi jawablah sesingkat mungkin
[k, v]
atau [v, k]
dapat diterima?
[k, v]