Menghasilkan semua kemungkinan permutasi pertarungan untuk N pemain yang dibagi menjadi N/2 pasangan

Saya mencoba membuat jadwal liga yang memiliki N pemain di mana N%2=0

Katakanlah misalnya saya ingin membuat jadwal untuk 6 pemain (A, B, C, D, E, F) membuat pasangan berbeda.

Pertimbangkan AB != BA dan harus dilacak sebagai pasangan yang berbeda

Memiliki 6 pemain harus ada 30 pasangan berbeda. Banyaknya kombinasi pasangan adalah pairsCount / (N / 2)

Tak satu pun dari pasangan kontes berikut ini yang bisa sama, mis. jika kontes 1 memiliki pasangan AB, kontes 2 tidak boleh memiliki pasangan AB.

(AB) (CD) (EF)
(AC) (BE) (CF)

...

(BA) (DC) (FE)

...

Saya mencoba mengikuti solusi ini

Algoritma untuk menghasilkan semua permutasi pasangan tanpa pengulangan

Soalnya pasangan kontes berikutnya sama dengan kontes sebelumnya. Saya harap Anda memahami masalah saya dan menunjukkan contoh yang baik dalam membuat jadwal seperti ini.


person Mantas Naidzinavičius    schedule 16.04.2020    source sumber
comment
Aku kehilanganmu di sana. Jadi Anda telah membuat 30 pasangan berbeda, Lalu, Anda membuat 30 pasangan berbeda lagi, dan menyadari bahwa pasangan tersebut sama dengan generasi sebelumnya? Bukankah ini hasil yang diharapkan karena generasi pertama Anda sudah memiliki semua kemungkinan permutasi pasangan? Atau apakah saya salah memahami kondisi Anda?   -  person tctham    schedule 16.04.2020
comment
Saya pikir Anda salah memahaminya. Saya menghasilkan 30 pasang sekali saja. Tetapi dengan menggunakan solusi yang saya lampirkan saya mendapatkan urutan yang salah: (AB) pasangan ditemukan tiga kali secara konsekuen. Saya tidak menginginkan itu. Saya tidak ingin pemain A bermain melawan pemain B tiga minggu berturut-turut. Saya ingin menggabungkannya, bahwa setiap minggu mereka akan bermain melawan pemain yang berbeda.   -  person Mantas Naidzinavičius    schedule 16.04.2020
comment
Jadi Anda mendapatkan pairs yang benar, tetapi sekarang Anda mencoba mengurutkannya dengan benar? Dimana dua pemain tidak boleh bertemu dalam dua minggu berturut-turut?   -  person shapiro yaacov    schedule 16.04.2020
comment
Itu benar. Saya rasa saya menemukan satu solusi di sini stackoverflow.com/questions/56730923/ sejauh ini bagus   -  person Mantas Naidzinavičius    schedule 16.04.2020
comment
Apakah BA sama dengan AB? Saya pikir secara umum dengan masalah seperti ini, ketertiban tidak menjadi masalah dalam kelompok tertentu. Jika tidak, Anda menghitung kombinasi yang sama beberapa kali. Seharusnya hanya ada 15 hasil total. Jika ini benar, maka ini adalah masalah yang diketahui. Ini disebut partisi kelompok dengan ukuran yang sama. Saya membuat paket di R yang menyerang masalah seperti ini menggunakan fungsi comboGroups(v = c("A", "B", .. "F"), numGroups = 3). Lihat stackoverflow.com/a/57861934/4408538   -  person Joseph Wood    schedule 17.04.2020