Contribution:
Tout d'abord
un tableau de trois cartes représentant les cartes jouées par chaque joueur formatées comme
[JD][TH][9S]
Représentant
Jack of Diamonds, 10 of Hearts, and Nine of Spades.
Comme vous vous asseyez toujours en face de votre coéquipier à Euchre, le deuxième élément représente le jeu de votre coéquipier. Ici, le TH
.
Deuxièmement,
un seul caractère, chaîne, etc. représentant le costume d'atout formaté comme
S, D, C, H
représentant
Spades, Diamonds, Clubs, Hearts
Troisièmement, un tableau de quatre cartes représentant votre main formatée comme
[KD][JC][QH][AS]
représentant
King of Diamonds, Jack of Clubs, Queen of Hearts, Ace of Spades
Objectif:
Compte tenu des trois entrées, sortez la meilleure carte possible à ajouter aux cartes qui ont été jouées de sorte qu'elle réponde aux critères suivants:
- Il prend la main s'il le peut, sinon sort la carte la moins précieuse
- Il prend la main s'il le peut, mais il ne l'emportera pas sur votre coéquipier à moins qu'il ne soit inévitable
- S'il peut prendre la main, il le fait en utilisant la carte la moins précieuse. (Si vous avez un as et une reine qui peuvent gagner la main, vous jouez la reine).
- Tous les jeux doivent suivre le mouvement requis par les règles du bas.
Format de sortie comme [JD]
Mise en page
A - Ace
K - King
Q - Queen
J - Jack
T - Ten
9 - Nine
H - Hearts
D - Diamonds
S - Spades
C - Clubs
TH, 9D, JD, QH, AD, 9C, TC
Exemples
Dans: [QD][KD][9C]
, "C"
,[AH][JH][QH][9H]
En dehors: 9H
Raison: comme les clubs sont atouts, le 9C gagne la main, nous ne pouvons pas prendre la main donc nous devons défausser notre carte la plus basse, ici le 9H
Dans: [QD][KD][AD]
, "H"
,[AH][JH][QH][9H]
En dehors: 9H
Raison: les coeurs étant des atouts, l'as de diamant gagne actuellement la main, nous sommes en mesure de l'emporter donc nous devons utiliser notre carte la plus basse, ici le 9H
Dans: [QD][KD][TD]
, "D"
,[AD][JH][QH][9D]
En dehors: 9D
Raison: comme les diamants sont des atouts et que nous gagnons actuellement la main, nous devrions jouer le 9D parce que notre partenaire gagne actuellement la main, donc nous voulons jouer au- 9D
dessus duAD
Dans: [QH][KH][JH]
, "D"
,[AD][JD][QH][9D]
En dehors: QH
Raison: comme les diamants sont atouts, nos adversaires gagnent avec le tonneau gauche JH
Nous avons le tonneau droit mais nous ne pouvons pas le surpasser parce que QH a été mené etQH
Dans: [QH][KH][JH]
, "D"
,[AD][JD][QC][9D]
En dehors: JD
Raison: comme les diamants sont atouts, nos adversaires gagnent avec le tonneau gauche JH
Nous avons le tonneau droit et comme nous n'en Diamonds
avons pas, nous pouvons l'emporter sur lui avec leJD
Points forts de la carte Euchre
Si Hearts est un atout:
JH
JD
AH
KH
QH
TH
9H
Consultez les règles d'Euchre si vous n'êtes pas familier avec la force des différentes cartes dans Euchre
Puisque c'est Code-Golf, le code le plus court gagne!
Bonne chance et amusez-vous bien!
la source
9D
comme résultat a des coeurs définis comme atouts (bien que je ne pense pas que cela affecte ce résultat).Réponses:
Perl -
557 532 511 490 482 384363Comment ça fonctionne
Essayez-le en ligne!
Tout d'abord, il lit les arguments et trouve le costume de gaucher (jack de la même couleur que Trump) avec une recherche de hachage:
Ensuite, il combine toutes les cartes en une seule chaîne et effectue quelques remplacements, ce qui fait que les cartes sont naturellement triées dans l'ordre correct pour euchre:
À la fin de ce bloc, la chaîne de carte est ensuite divisée sur les crochets, ce qui crée un tableau de toutes les cartes où:
index 0 = carte principale de l'adversaire
index 1 = carte du coéquipier
index 2 = carte de l'autre adversaire
les indices 3-6 représentent la main
La couleur principale est analysée à partir de la première carte, mais la couleur passe à «0» pour représenter l'atout si l'atout a été mené:
La meilleure carte en jeu est trouvée en triant les trois premières cartes et en récupérant la première carte:
Les cartes jouables sont trouvées. Si des cartes en main correspondent à la couleur principale, alors seules ces cartes restent. Sinon, toutes les cartes sont considérées comme jouables:
La carte «jetable» est trouvée en retournant la dernière carte dans le tableau trié de cartes jouables:
La carte `` gagnante '' la plus basse qui peut gagner l'astuce est trouvée en ajoutant la carte la plus élevée en jeu au tableau de cartes jouables, en triant le tableau et en l'itérant jusqu'à ce que la carte en jeu la plus élevée soit trouvée. La carte «gagnante» est la carte de l'itération précédente:
Le jeu correct est ensuite évalué. La carte «jetable» est choisie si l'une des conditions suivantes est vraie:
Sinon, la carte «gagnante» est retournée:
la source