[Python] Programmation pour trouver le nombre de a dans une chaîne de caractères qui se répète un nombre spécifié de fois.

[Python] Programmation pour trouver le nombre de a dans une chaîne de caractères qui se répète un nombre spécifié de fois

▼ Question

--List donne une chaîne de longueur (s) arbitraire (s)

URL

▼sample input

python


s ="aba"
n =10

▼sample output

python


7

image


abaabaabaa <-7 un

▼my answer

python


def repeatedString(s, n):
    a = s.count("a")
    ans=i=0    
    
    #Trouvez le nombre de a contenu dans les caractères excédentaires
    r = n%len(s)
    if r!=0:
        while i<r:
            if s[i]=="a":
                ans += 1
            i+=1
            
    ans += a*int(n/len(s)) 
    return ans    
            

if __name__ == '__main__':
    fptr = open(os.environ['OUTPUT_PATH'], 'w')
    s = input()
    n = int(input())
    result = repeatedString(s, n)
    fptr.write(str(result) + '\n')
    fptr.close()

--Pour extraire des éléments d'un objet fixe --Pendant la répétition jusqu'à ce que la condition spécifiée soit remplie


L'instruction while ci-dessus peut être remplacée par "for i in range (r)".

Remplacer while par for


def repeatedString(s, n):
    a = s.count("a")
    ans=0    
    
    #Trouvez le nombre d'itérations(math.ne pas utiliser le sol)
    r = n%len(s)
    if r!=0:
        for i in range(r):
            if s[i]=="a":
                ans += 1
            
    ans += a*int(n/len(s)) 
    return ans    
            
repeatedString(s, n)

#### Transformez l'instruction if en une phrase et réécrivez-la en notation d'inclusion.

▼ Traitement

Notation d'inclusion


def repeatedString(s, n):
    a = s.count("a")
    ans=0    
    
    #Trouvez le nombre d'itérations(math.ne pas utiliser le sol)
    r = n%len(s)
    if r!=0:
        ans =  sum([(1 if s[i]=="a" else 0) for i in range(r)])
             
    ans += a*int(n/len(s)) 
    return ans    
            
repeatedString(s, n)

Supplément: MemoryError

J'ai créé une chaîne de caractères répétée pour le nombre de caractères spécifié et en compté le nombre, mais lorsque le nombre est grand, une erreur de mémoire se produit.

python


s ="babbaabbabaababaaabbbbbbbababbbabbbababaabbbbaaaaabbaababaaabaabbabababaabaabbbababaabbabbbababbaabb"
n = 860622337747

▼ Le processus de recherche d'une chaîne de caractères est lourd.

python


def repeatedString(s, n):
    #Avance (maths).le sol n'est pas utilisé)
    if float(n/len(s)):
        r = int(n/len(s)) +1
    else:
        r = n/len(s)
    
    #Demander une chaîne
    ans = x = 0
    ss = s*r
    for letter in ss:
        x += 1
        if x>n:
            break
        elif letter == "a":
            ans += 1
    return ans
            
repeatedString(s, n)

#MemoryError:

Recommended Posts

[Python] Programmation pour trouver le nombre de a dans une chaîne de caractères qui se répète un nombre spécifié de fois.
Divise la chaîne de caractères par le nombre de caractères spécifié. En Ruby et Python.
Découvrez la largeur apparente d'une chaîne en python
Comment compter rapidement la fréquence d'apparition des caractères à partir d'une chaîne de caractères en Python?
[Python] Un programme pour trouver le nombre de pommes et d'oranges qui peuvent être récoltées
Trouvez le nombre de jours dans un mois
[Python] Un programme qui calcule le nombre de chaussettes jumelées
[Introduction à Python] Une explication approfondie des types de chaînes de caractères utilisés dans Python!
Vérifiez si la chaîne est un nombre en python
Comment obtenir le nombre de chiffres en Python
"Livre pour former des compétences en programmation pour combattre dans le monde" Exemple de solution de code Python --1.1 Chaîne de caractères en double
[Python] Comment développer des variables dans une chaîne de caractères
#Une fonction qui renvoie le code de caractère d'une chaîne de caractères
Version Python (PHP vers Python) qui supprime la chaîne de caractères suivante de la chaîne de caractères spécifiée (extension)
Comment trouver le coefficient de la courbe approximative passant par les sommets en Python
Un script python qui obtient le nombre de travaux pour une condition spécifiée sur Indeed.com
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
[Ansible] Exemple de playbook qui ajoute une chaîne de caractères à la première ligne du fichier
[Python] Un programme qui trouve le nombre d'étapes le plus court dans un jeu qui traverse les nuages
[Python] Ne laissez que les éléments commençant par une chaîne de caractères spécifique dans le tableau
Trouvez une ligne directrice pour le nombre de processus / threads à définir sur le serveur d'applications
Comment trouver le premier élément qui correspond aux critères de la liste Python
Comment trouver le nombre optimal de clusters pour les k-moyennes
Obtenez le nombre d'éléments spécifiques dans la liste python
Python --Trouvez le nombre de groupes dans l'expression regex
Trouver les valeurs propres d'une vraie matrice symétrique en Python
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --1.2 Compter le nombre des mêmes caractères
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
Lorsqu'une chaîne de caractères d'une certaine série se trouve dans la clé du dictionnaire, la chaîne de caractères est convertie en valeur du dictionnaire.
Comment déterminer l'existence d'un élément sélénium en Python
[Introduction à Python] Comment générer une chaîne de caractères dans une instruction Print
Comment vérifier la taille de la mémoire d'une variable en Python
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Une fonction qui mesure le temps de traitement d'une méthode en python
Un script qui renvoie 0, 1 attaché au premier Python prime
[python] Une note que j'ai commencé à comprendre le comportement de matplotlib.pyplot
[Python] Une fonction simple pour trouver les coordonnées du centre d'un cercle
[Python] Un programme qui fait pivoter le contenu de la liste vers la gauche
Obtenez le nombre de lecteurs d'articles sur Mendeley en Python
[Python] Comment inverser une chaîne de caractères
Résumé du format de chaîne de caractères en Python3 Que ce soit pour vivre avec l'ancien modèle ou le nouveau modèle
[Python] Un programme qui calcule le nombre de segments de chocolat qui remplissent les conditions
Mayungo's Python Learning Episode 6: J'ai essayé de convertir une chaîne de caractères en nombre
[Python] Comment mettre n'importe quel nombre d'entrées standard dans la liste
Je veux convertir par lots le résultat de "chaîne de caractères" .split () en Python
Je veux colorer une partie de la chaîne Excel avec Python
Fonction Eval () qui calcule une chaîne de caractères comme expression en python
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
J'ai fait un programme pour vérifier la taille d'un fichier avec 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
Comptez le nombre de fois que deux valeurs apparaissent simultanément dans un élément de type itérateur Python 3
4 méthodes pour compter le nombre d'occurrences d'entiers dans un certain intervalle (y compris la méthode imos) [implémentation Python]
[Version terminée] Essayez de connaître le nombre d'habitants de la ville à partir de la liste d'adresses avec Python
Comment saisir une chaîne de caractères en Python et la sortir telle quelle ou dans la direction opposée.
Créez un bot qui publie sur Slack le nombre de personnes positives pour le nouveau virus corona à Tokyo
Une histoire sur la création d'un programme qui augmentera le nombre d'abonnés Instagram de 0 à 700 en une semaine
Sortie du nombre de cœurs de processeur en Python
Comment incorporer des variables dans des chaînes python
Récupérer l'appelant d'une fonction en Python