Partie 1 J'ai écrit un exemple de la réponse au problème de référence de l'écriture hors ligne en temps réel en Python

Cliquez ici pour plus de détails sur le problème. http://qiita.com/Nabetani/items/cbc3af152ee3f50a822f

Je l'ai écrit en python en référence à l'implémentation de ruby. Puisque la chaîne de caractères représentant le rang est un caractère autre que 10, remplacez d'abord 10 par un caractère «T», et retirez uniquement les caractères de rang arrangés tous les autres caractères et faites-le classer. Ensuite, utilisez la fonction set pour extraire les types de caractères de classement et créez une paire qui vérifie le nombre de rangs par nombre. Enfin, triez et quantifiez la paire et recherchez le dictionnaire prédéfini pour trouver la réponse.

def solve(text):
    rank = text.replace('10','T')[1::2]
    pair = [rank.count(x) for x in set(rank)]
    key = reduce(lambda a,b: a*10+b, sorted(pair))
    return {14:'4K', 23:'FH', 113:'3K', 122:'2P', 1112:'1P', 11111:'--'}[key]

def test(text, answer):
    result = solve(text)
    print 'OK' if result == answer else 'NG', result, answer, text

if __name__ == '__main__':
    test('D3C3C10D10S3', 'FH')
    test('S8D10HJS10CJ', '2P')
    test('DASAD10CAHA', '4K')
    test('S10HJDJCJSJ', '4K')
    test('S10HAD10DAC10', 'FH')
    test('HJDJC3SJS3', 'FH')
    test('S3S4H3D3DA', '3K')
    test('S2HADKCKSK', '3K')
    test('SASJDACJS10', '2P')
    test('S2S10H10HKD2', '2P')
    test('CKH10D10H3HJ', '1P')
    test('C3D3S10SKS2', '1P')
    test('S3SJDAC10SQ', '--')
    test('C3C9SAS10D2', '--')

Recommended Posts

Partie 1 J'ai écrit un exemple de la réponse au problème de référence de l'écriture hors ligne en temps réel en Python
Partie 1 J'ai écrit la réponse au problème de référence de l'écriture hors ligne en temps réel en Python
Le 15e comment écrire un problème de référence en temps réel hors ligne en Python
Le 14ème problème de référence d'écriture en temps réel hors ligne en python
Le 18ème comment écrire un problème de référence en temps réel hors ligne en Python
17ème problème de référence d'écriture en temps réel hors ligne implémenté en Python
Un exemple de réponse à la question de référence de la session d'étude. Avec python.
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
Comment écrire un exemple d'implémentation Python du problème E15 en temps réel hors ligne
J'ai écrit le code pour écrire le code Brainf * ck en python
Comment écrire en temps réel hors ligne Résolution des problèmes E04 avec Python
Comment écrire hors ligne en temps réel J'ai essayé de résoudre E11 avec python
Le 16ème comment écrire un problème de référence en temps réel hors ligne à résoudre avec Python
Le 19ème comment écrire un problème de référence en temps réel hors ligne à résoudre avec Python
Comment écrire en temps réel hors ligne J'ai essayé de résoudre E12 avec python
Comment écrire un exemple d'implémentation E14 Python en temps réel hors ligne
Comment connaître la structure interne d'un objet en Python
Comment écrire hors ligne en temps réel Résolution des problèmes F01 avec Python
Je veux colorer une partie de la chaîne Excel avec Python
Le 15e problème d'écriture en temps réel hors ligne a été résolu avec python
Réponse à "Comment écrire le problème F02 en temps réel hors ligne"
Réponse à "Comment écrire un problème F01 en temps réel hors ligne"
Réponse au "Problème d'écriture en temps réel hors ligne E13"
Je souhaite stocker les résultats de% time, %% time, etc. dans un objet (variable)
20e Comment écrire des problèmes en temps réel hors ligne en Python
Comment obtenir le nombre de chiffres en Python
Je veux écrire en Python! (3) Utiliser des simulacres
[Python] Comment écrire une instruction if en une phrase.
[Question] Comment obtenir les données des données textarea en temps réel à l'aide du flacon du framework Web Python
Comment calculer la somme ou la moyenne des données csv de séries chronologiques en un instant
J'ai écrit un doctest dans "J'ai essayé de simuler la probabilité d'un jeu de bingo avec Python"
J'ai créé un programme en Python qui change les données de 1 minute de FX en une heure arbitraire (1 heure, etc.)
J'ai écrit la file d'attente en Python
J'ai écrit la pile en Python
J'ai essayé de décrire le trafic en temps réel avec WebSocket
J'ai comparé le temps de calcul de la moyenne mobile écrite en Python
[Python] PCA scratch dans l'exemple de "Introduction à la méthode d'analyse multivariée"
17e comment résoudre les problèmes d'écriture en temps réel hors ligne avec Python
Comment vérifier la taille de la mémoire d'une variable en Python
Le 10ème problème de référence d'écriture en temps réel hors ligne. Exemple d'implémentation par Python.
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
[Python] Explique comment utiliser la fonction format avec un exemple
Le 11ème problème de référence d'écriture en temps réel hors ligne. Exemple d'implémentation par python.
"Un livre pour former des compétences en programmation pour combattre dans le monde" Exemple de réponse au code Python --1.4 Séquence de phrases
[Python] J'ai essayé de résumer le type collectif (ensemble) d'une manière facile à comprendre.
[Examen d'ingénieur d'information de base] J'ai écrit un algorithme pour la valeur maximale d'un tableau en Python.
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --1.9 Rotation de la chaîne de caractères
Comment couper la partie inférieure droite de l'image avec Python OpenCV
Comment écrire le bon shebang dans les scripts Perl, Python et Ruby
Comment obtenir la différence de date et d'heure en secondes avec Python
Je veux convertir par lots le résultat de "chaîne de caractères" .split () en Python
Je veux expliquer en détail la classe abstraite (ABCmeta) de Python
Je souhaite laisser une commande arbitraire dans l'historique des commandes de Shell
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
Comment écrire Ruby to_s en Python
(Journal 1) Comment créer, parcourir et enregistrer des données dans la base de données SQL du service Microsoft Azure avec python
J'ai essayé d'expliquer comment obtenir le contenu de l'article avec l'API MediaWiki d'une manière facile à comprendre avec des exemples (Python 3)
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python
[Examen d'ingénieur d'information de base] J'ai écrit l'algorithme de la méthode de division mutuelle euclidienne en Python.