Jako dziecko często grałem w grę karcianą „ golf ” . Twoim wyzwaniem, jeśli zdecydujesz się je zaakceptować, jest obliczenie wyniku ręki golfowej. Ponieważ w tej grze karcianej 1 jest ponad 9000 odmian , zastosujemy się do zasad, które pamiętam.
Zasady gry)
Kończysz rundę 6 kartami i chcesz mieć jak najmniej punktów.
Jokery nie są używane.
Asy i 2s są warte odpowiednio -1 i -2 punktów.
Walety i królowie są warte 0 punktów.
Karty od 3 do 10 są warte wartości nominalnej. Są one jednak anulowane po ich sparowaniu. Na przykład 5 jest wart 5 punktów, ale dwa 5 są warte zero. Trzy 5s są warte 5 punktów (ponieważ pierwsze 2 są sparowane, ale trzeci nie jest.), A cztery 5s są warte 0 (ponieważ tworzy 2 pary).
Królowe są warte 15 punktów. Królowych nie można anulować, np. 2 królowe są warte 30 punktów.
Zasady (wyzwania)
Wejście będzie tablicą liczb całkowitych lub 6 pojedynczych liczb całkowitych. Którykolwiek wolisz. 1 oznacza asa, 2-10 oznacza 2-10, a Jack, Queen i King reprezentują 11, 12 i 13. Wynik jest wynikiem rozdania zgodnie z powyższymi zasadami. Możesz bezpiecznie założyć, że wszystkie dane wejściowe są prawidłowe, np. Żadna liczba nie pojawia się więcej niż 4 razy, a wszystkie liczby są w zakresie [1, 13]
. Dane wejściowe i wyjściowe mogą mieć dowolny rozsądny format.
Test IO:
[11, 10, 3, 1, 2, 2] --> 8
[4, 5, 5, 3, 8, 7] --> 22
[2, 2, 2, 2, 1, 1] --> -10 (The lowest score possible)
[12, 12, 12, 12, 10, 9] --> 79 (The highest score possible)
[9, 9, 9, 9, 11, 1] --> -1
[8, 8, 8, 8, 11, 13] --> 0
[10, 9, 3, 7, 12, 2] --> 42
[1, 2, 3, 4, 5, 6] --> 15
[10, 9, 2, 3, 4, 1] --> 23
[10, 3, 12, 3, 7, 12] --> 47
Najkrótsza odpowiedź w bajtach wygrywa!
1 nie bardzo, ale istnieje wiele odmian.
źródło
0=?
kilka razy korzystałeś lub coś podobnego - możesz użyć?!
zamiast tego?MATL ,
2726 bajtówDane wejściowe to tablica kolumn, tzn. Wartości są oddzielone średnikami.
Wypróbuj online! lub zweryfikuj wszystkie przypadki testowe (dodaje to pętlę do pobierania wszystkich danych wejściowych i zastępuje
G
ją,1$0G
aby przekazać najnowsze dane wejściowe).Wyjaśnienie
źródło
Pyth -
373635To wydaje się zbyt duże, ale FGITW.
Pakiet testowy .
źródło
J
iK
wydają się zupełnie niepotrzebne, a także możesz grać+_
w golfa-
;) Mam 31:+*15/Q12-sm*d%/Qd2{>#2<#11Qs@S2
+*15/Q12-s*R%/Qd2}3Ts@S2
JavaScript (ES6), 63 bajty
Lub jeśli wolisz
źródło
Perl 5 , 74 +1 (
-a
) = 75 bajtówWypróbuj online!
źródło
Perl 5.10.0 +
-n
,115646056 bajtówWypróbuj online!
Wyjaśnienie:
Dodanie
-n
pętli wokół niego:źródło