Le 14ème problème de référence d'écriture en temps réel hors ligne avec Python

Comment écrire hors ligne en temps réel 14 (28 septembre) http://atnd.org/events/43076 Problème de référence "Traversée sur la circonférence" http://nabetani.sakura.ne.jp/hena/ord14crosscircle/ Exemple de mise en œuvre.

Avec python inconnu.

Exemples de réponses dans d'autres langues http://qiita.com/Nabetani/items/66806c9dc14a96f2fd42 Vous pouvez suivre de.

alors.

#coding:utf-8
#tested with Python 2.7.5 and Python 3.3.2

import re

def solve( src ):
    return str(len(
            [ 0
                for a in range( 0, len(src) )
                for b in range( 0, a )              
                for c in range( 0, b ) if src[a]==src[c] 
                for d in range( 0, c ) if src[b]==src[d] ] ))

def test( samples ) :
    for line in samples.splitlines():
        a=re.split( "\s+", line ) # num, input, expected
        if len(a) <3:
            continue
        actual = solve( a[1] )
        ok=actual==a[2]
        print( [ "ok" if ok else "***NG***", a[1:3], actual ] )

test( """
0   aabbca1bcb  14  
1   111ZZZ  0   
2   v   0   
""")

Comme d'habitude, la plupart des données de test sont omises.

Une mise en œuvre terriblement naïve. Le pire est O (N ** 4), mais cela suffit pour ce problème.

Choisissez 4 points. Si le premier et le troisième ont le même nom et le deuxième et le dernier ont le même nom, il y a une intersection. Essayez-les tous et vous avez terminé.

Je ne pense pas que ce devrait être le cas d'utiliser la notation d'inclusion de liste, mais je veux l'utiliser, donc je l'utilise sans hésitation. J'ai décidé de l'utiliser, mais je n'étais pas intéressé par le contenu de la liste, alors j'ai décidé de le remplir avec 0, ce qui m'a fait me sentir un peu étrange (j'en ai envie, mais ce n'est pas Pythonista, alors je me demande si c'est vraiment étrange. Je ne suis pas sûr).

Si vous modifiez l'ordre, le cas typique sera plus rapide, mais le pire des cas ne sera pas plus rapide, alors je l'ai laissé tel quel.

Recommended Posts

Le 14ème problème de référence d'écriture en temps réel hors ligne avec Python
Le 18ème problème d'écriture en temps réel hors ligne en Python
Le 19ème problème d'écriture en temps réel hors ligne 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.
Le 11ème problème de référence d'écriture en temps réel hors ligne. Exemple d'implémentation par 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
Le douzième problème de référence d'écriture en temps réel hors ligne. Implémenté par 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
Le 16ème problème d'écriture en temps réel hors ligne a été résolu avec Python
17ème problème de référence d'écriture en temps réel hors ligne implémenté en Python
Le 15e problème d'écriture en temps réel hors ligne a été résolu avec python
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
13th Offline en temps réel Comment résoudre les problèmes d'écriture avec Python
Réponse à "Comment écrire le problème F04 en temps réel hors ligne"
Réponse à "Comment écrire le problème F05 en temps réel hors ligne"
Réponse à "Comment écrire un problème E12 en temps réel hors ligne"
Résolvez le problème du sac à dos Python avec l'algorithme glouton
Essayez de résoudre le problème d'affectation du médecin de formation avec Python
J'ai essayé de résoudre le problème avec Python Vol.1
Appelez l'API avec python3.
Comment écrire hors ligne en temps réel Résolution des problèmes E05 avec Python
J'ai essayé de résoudre le problème de F02 comment écrire en temps réel hors ligne avec Python
Extraire le fichier xz avec python
[Commentaire d'AtCoder] Gagnez le problème ABC165 C "Many Requirements" avec Python!
Obtenez la météo avec les requêtes Python
Obtenez la météo avec les requêtes Python 2
Comment écrire un exemple d'implémentation Python du problème E15 en temps réel hors ligne
Trouvez la distance d'édition (distance de Levenshtein) avec python
Accédez à l'API Etherpad-lite avec Python
Installer le plug-in Python avec Netbeans 8.0.2
Lire et écrire NetCDF avec Python
J'ai aimé le tweet avec python. ..
Résolvez le problème du sac à dos Python avec la méthode de branche et liée
Maîtriser le type avec Python [compatible Python 3.9]
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
Lire et écrire du CSV avec Python
Résolvez les problèmes de somme partielle avec une recherche complète en Python
Rendre la console Python couverte d'UNKO
[Python] Définissez la plage du graphique avec matplotlib
Derrière le flyer: utiliser Docker avec Python
Vérifier l'existence du fichier avec python
[Python] Récupère le nom de la variable avec str
[Python] Arrondissez avec juste l'opérateur
Afficher Python 3 dans le navigateur avec MAMP
Lisons le fichier RINEX avec Python ①
Travailler avec OpenStack à l'aide du SDK Python
Lire et écrire des fichiers JSON avec Python
Télécharger des fichiers sur le Web avec Python
Python: j'ai essayé le problème du voyageur de commerce