Apakah mengepak tas hadiah lebih mudah bagi Rupert daripada Santa?


12

Atau: Apakah kita membutuhkan Rupert untuk mendapatkan hadiah sama sekali?

Mengesampingkan masalah , Santa menghadapi masalah berikut (berkali-kali lipat):

Diberi tas dengan kapasitas¹ C dan satu set hadiah {p1,,pn} , masing-masing dengan ukuran si , ia ingin membuat anak-anak {c1,,ck} bahagia. Dia tahu dari semua daftar keinginan bahwa anak cj nilai sekarang pi persis vi,jQ0 banyak.

Yang (berpasangan menguraikan) set hadiah untuk memilih untuk setiap anak sehingga semuanya cocok, yaituIj[1..n]

,j[1..k]iIjsiC

dan kebahagiaan sebanyak mungkin terjadi², yaitu

max!j[1..k]iIjvi,j

Ini jelas tidak lebih mudah daripada Bin Packing atau Knapsack, jadi Santa yang malang mungkin harus menghabiskan banyak waktu untuk mengepak tas³.

PD oleh 1212eins@pixabay.com

Sekarang, seperti yang kita ketahui, asistennya Rupert tidak memberi tanpa syarat. Dia memiliki pengetahuan tentang , nilai maksimum yang dapat diterima anak berdasarkan perilaku selama tahun tersebut; yaitu, dia menambahkan kendala tambahanc jVjcj

j[1..k]. iIjvi,jVj .

Apakah itu membuat masalah mengemas tas lebih mudah? Jika tidak selalu, lalu dalam kondisi apa?


  1. Jika diameter c himney adalah faktor pembatas, kerangka kerja yang sama dapat dibentuk.
  2. Mari kita tidak mementingkan diri sendiri dengan keadilan dan ide-ide konyol lainnya.
  3. Karenanya, hanya satu Natal per tahun. QED

Semua orang yang ingin memberi kepada sesama pengguna, tambahkan hadiah sekali itu mungkin! Jawaban yang benar dan dapat dimengerti yang juga menyulap semangat liburan paling memenuhi syarat!
Raphael

Pertanyaan-pertanyaan Natal saya yang lebih lama tentang perutean Santa dan pada pemasangan cookie keduanya setidaknya sebagian terbuka juga!
Raphael

Bah! ... Humbug!
Rick Decker

2
Beberapa komentar sepele: masalahnya tidak selalu lebih mudah (pilih saja ) tetapi ada setidaknya satu kasus di mana itu (set semua kecuali , yang disetel ke ). V j = 0 V 1 menit i v i , 1VjiIjvi,jVj=0V1minivi,1
Manlio

Jawaban:


1

Setelah dengan cepat melihat pertanyaan ini, saya percaya pengetahuan ekstra Rupert tentang {perilaku, nilai maksimum sekarang] setiap anak tidak akan selalu membuat pekerjaan Santa lebih mudah. Santa masih perlu melakukan 0/1 ransel untuk mengisi tas dan algoritma Hungaria juga untuk memaksimalkan kebahagiaan yang diterima setiap anak kapitalis pada pagi Natal. Sebuah kasus sederhana di mana itu akan membuat pekerjaan Santa cukup sederhana adalah jika setiap anak yang Santa pertimbangkan tidak menerbitkan makalah dan bukannya bermain video game sepanjang tahun menerima nol dari Rupert (setiap anak akan mendapatkan batu bara).

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.