![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 20.08.2013 Ostrzeżenie: (0%) ![]() ![]() |
hejo (IMG:style_emoticons/default/smile.gif) proszę o pomoc.
mam 4 stosy kart (A,B,C,D). w każdym stosie mam 4 karty (1,2,3,4). karty mają jakąś wartość liczbową (od 5 do 20). mam też 4 graczy. chcę rozdać te karty graczom z pewnymi wymaganiami: - każdy gracz może mieć tylko jedną kartę z każdego stosu - suma wartości kart każdego gracza ma być możliwie wyrównana dlatego potrzebuję skryptu który mi to obliczy, czyli przejrzy wszystkie możliwe kombinacje. nie wiem jak to zrobić. próbowałem z 4 pętlami, jedna w drugiej ale to chyba nie to. macie jakieś pomysły? Ten post edytował ibalyx 18.12.2013, 20:06:53 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 2 Dołączył: 28.02.2009 Ostrzeżenie: (10%) ![]() ![]() |
Nie jest to rozwiązanie optymalne, ale jedno z prostszych - wystarczy te stosy posortować i po kolei dawać każdemu graczowi skrajne wartości.
Dla przykładu:
Rozwiązanie jest szybkie, nie wymaga żadnych pętli, jednak są i minusy - dwóch graczy będzie miało wartości zbliżone do siebie, natomiast dwóch innych graczy będzie miało wartości skrajne. Mam nadzieję, że kod się przyda. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Musisz stworzyć wszystkie możliwe czwórki kart. Tutaj najprościej 4 pętle coś na zasadzie:
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 20.08.2013 Ostrzeżenie: (0%) ![]() ![]() |
Musisz stworzyć wszystkie możliwe czwórki kart. Tutaj najprościej 4 pętle coś na zasadzie:
tylko potrzebuję wyświetlić kto jakie karty dostał :-) też z tymi pętlami kombinowałem. przynajmniej wiem, że jest jakieś 331 776 kombinacji. Ten post edytował ibalyx 18.12.2013, 19:49:15 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
jako klucz masz po przecinku klucze z talii
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 20.08.2013 Ostrzeżenie: (0%) ![]() ![]() |
zapomniałem o najważniejszej rzeczy. karty są podzielone na kolory wg hierarchii:
- czerwone (3 karty) - najsilniejsze - niebieskie (4karty) - zielone (5 kart) - żółte (4 karty) - najsłabsze tak więc "czerwona 5" jest silniejsza od "niebieskiej 20". wiele kombinacji teraz nie będzie, ale mimo wszystko wolałbym, żeby skrypt mi to wyliczył :-) przykład: STOS_A - czerwona 5 - zielona 10 - zielona 10 - żółta 11 STOS_B - czerwona 10 - czerwona 10 - zielona 15 - żółta 16 STOS_C - niebieska 7 - niebieska 7 - zielona 9 - żółta 10 STOS_D - niebieska 7 - niebieska 7 - zielona 9 - żółta 10 to nadal obowiązuje: - każdy gracz może mieć tylko jedną kartę z każdego stosu po kilku próbach wyszło mi tak: gracz_A = 39, gracz_B = 37, gracz_C = 37, gracz_D = 40. nie wiem czy wszystkie kombinacje sprawdziłem. Ten post edytował ibalyx 19.12.2013, 17:50:30 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 19:38 |