İşte bu sorunun arka planı. Arkadaşlar ve ben, herkesin başkalarına hediye vermesi gereken bir oyun oynuyorduk. Kimin kime hediye vermesi gerektiğini belirlemek için çok şey çekmeye karar veriyoruz. Ama sorun şu ki, birisi kendisine komik olmayan hediyeler verebilir. Bu tür talihsiz kişilerin beklenen sayısının 1 olduğunu görebilirsiniz, bu yüzden bu oldukça sık görülür.
Bu amaçla, dearrangement çok uygun görünüyor. Eğer bir dearrangement üretebilirsem, o zaman sadece bir dearrangement seçebilir ve kime hediyeler vereceğine karar verebilirim.
Las Vegas yöntemi ile rasgele tasfiye üretimi yapılabilir. Ama sorun şu ki, sadece polinom çalışma süresi bekleniyor. Bu yüzden i-th dearrangement bulma sorununa geldim. [1, D_n] 'de rastgele bir i seçebilir ve i-th dearrangement elde etmek için bazı en kötü durum polinom zamanı (verimli) algoritması kullanabilirsem, o zaman yapılır.