• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Losowanie par

VPS Starter Arubacloud
0 głosów
671 wizyt
pytanie zadane 11 marca 2018 w Matematyka, fizyka, logika przez LFC Nowicjusz (120 p.)
witam,
Dla przykladu mam zbior 6 elementow o wartosciach 1-6. Utworzylem z nich wszystkie mozliwe pary pod warunkiem ze nie moga istniec pary (x,x) a pary (x,y) < = > (y,x), czyli z 6 elementow otrzymalem 15 par.
Chcialbym utworzyc algorytm ktory wylosuje mi 5 zbiorow po 3 pary, takich ze kazda para jest przydzielona tylko do jednego zbioru a w kazdym zbiorze kazdy element wystepuje dokladnie raz.
Oczywisce dla kazdej pary przed zapisaniem do danego zbioru sprawdzam czy jakis jej element nie zawiera sie juz w danym zbiorze a pary losuje bez powtorzen. Problem w tym ze zdarza sie ze program wylosuje np. takie zbiory:
1 zbior:1-2 ; 3-4 ; 5-6 , 2 zbior: 1-3 ; 2-4 ; ... i tu sie zacina bo jedyna mozliwosc to by bylo 5-6 ale nie moze juz tej pary wylosowac.
Probowalem roznych sposobow by to obejsc ale bez skutku. Czy ktos wie jakie warunki musi spelniac taki algorytm?? program pisze w Javie.
komentarz 11 marca 2018 przez Patrycjerz Mędrzec (192,340 p.)

Chcialbym utworzyc algorytm ktory wylosuje mi 5 zbiorow po 3 pary, takich ze kazda para jest przydzielona tylko do jednego zbioru a w kazdym zbiorze kazdy element wystepuje dokladnie raz.

Nie rozumiem tego opisu. Możesz podać jakiś przykład? 

komentarz 11 marca 2018 przez LFC Nowicjusz (120 p.)
edycja 11 marca 2018 przez LFC
mozliwe pary elementow: 1-2 ; 1-3 ; 1-4 ;1-5 ; 1-6 ; 2-3 ; 2-4 ; 2-5 ; 2-6 ; 3-4 ; 3-5 ; 3-6 ; 4-5 ; 4-6 ; 5-6

chcialbym zeby program wylosowal na przyklad:

1 zbior: 1-2 ; 3-4 ; 5-6  // zaden element sie nie powtarza np. nie ma dwoch jedynek

2 zbior: 1-3 ; 2-6 ; 4-5 // zaden element sie nie powtarza i nie powtarzaja sie pary z 1 zbior

3 zbior: 1-6 ; 3-5 ; 2-4 // zaden element sie nei powtarza i nie powtarzaja sie pary ze zbiorow 1 i 2
komentarz 12 marca 2018 przez LFC Nowicjusz (120 p.)

Okej, problem rozwiązany w bardzo prosty sposób. Dla zainteresowanych link pod spodem:
http://www.deltami.edu.pl/temat/informatyka/algorytmy/2011/02/27/O_rozgrywkach_ligowych/

1 odpowiedź

0 głosów
odpowiedź 11 marca 2018 przez Patrycjerz Mędrzec (192,340 p.)

Zauważ, że takowa sytuacja zakleszczenia występuje, gdy dwie pierwsze pary danego zbioru zawierają cyfry tylko z dwóch par innego zbioru. Przykład:

1. (1,2),(3,4),(5,6)
2. (1,6),(3,5),(4,5)
3. (1,5),(2,6), X

W trzecim zbiorze dwie pierwsze pary korzystają jedynie z cyfr pierwszej i trzeciej pary pierwszego zbioru. Sytuacja zakleszczenie jest nieunikniona. Musisz więc sprawdzać, czy elementy pochodzą z wszystkich trzech par.

Podobne pytania

0 głosów
1 odpowiedź 298 wizyt
pytanie zadane 25 kwietnia 2016 w Algorytmy przez Surykat Stary wyjadacz (14,760 p.)
+2 głosów
3 odpowiedzi 421 wizyt
0 głosów
2 odpowiedzi 535 wizyt
pytanie zadane 6 października 2018 w PHP przez damian9901 Bywalec (2,140 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...