[PYTHON] La deuxième nuit de la boucle avec pour

http://d.hatena.ne.jp/shindannin/20111202/1322833089 Oui, la référence de ce soir provient du lien ci-dessus

Problème 1 Count FizzBuzz Combien d'entiers de A à B qui sont divisibles par 3 ou 5? Avec ça Réimprimer l'exemple de l'autre partie est déroutant, donc juste pour moi

Round-robin en utilisant la boucle for.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Préparation du contrôle de l'utilisation de la mémoire et du temps de fonctionnement
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Jusqu'ici
i=0
j=0

#ex1
for x in range(5, 11):
    if x%3==0 or x%5==0:
        i+=1

#ex2
for y in range(14, 17):
    if y%3==0 or y%5==0:
        j+=1
            

print 'ex1:'+str(i),'ex2:'+str(j)
####Utilisation de la mémoire et sortie du temps de fonctionnement
end = time.clock()
print h.heap()
print end-start

La plage (5,11) est-elle trop intuitive pour passer de 5 à 10 avec for? Je ne pense pas que ce soit le cas, mais je n'aimais pas ça quand j'ai écrit un entier entre A et B dans une déclaration while.

Lorsqu'il est écrit dans la déclaration while.py


 i=0
a,b =5,10
#↓ sera spécifié pour être exécuté entre A et B
while a<=b:
#Lorsqu'il est divisible par 3 ou 5, ajoutez 1 au compteur
   if a%3==0 or a%5==0:
     i+=1
#Ajouter 1 par un avant de revenir à la condition jugement d'exécution de la partie while
   a+=1

Hmmm, je pense que c'est mieux dans ce cas. Et ensuite

Problème 2 Count FizzBuzz (2) x est un entier de 0 à X, y est un entier de 0 à Y et z est un entier de 0 à Z. Combien de combinaisons de (x, y, z) y a-t-il dans lesquelles x + y * y + z * z * z * z est divisible par 3 ou 5?

Round-robin utilisant plusieurs boucles for


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Préparation du contrôle de l'utilisation de la mémoire et du temps de fonctionnement
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Jusqu'ici
i=0

for x in range(0,101):
    for y in range(0,101):
        for z in range(0,101):
            tmp=x + y*y + z*z*z*z
            if tmp%3==0 or tmp%5==0:
                i+=1
            else:
                pass

print i

            


####Utilisation de la mémoire et sortie du temps de fonctionnement
end = time.clock()
print h.heap()
print end-start

Pour le moment, je l'ai écrit pendant, mais ce n'est toujours pas beau. .. .. Et la vitesse d'exécution était d'environ 0,61 seconde pour l'instruction for et de 0,70 seconde pour l'instruction while.

Lors de l'utilisation pendant.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Préparation du contrôle de l'utilisation de la mémoire et du temps de fonctionnement
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Jusqu'ici
i=0
x=y=z=0

while x<=100:
    while y<=100:
        while z<=100:
            tmp=x + y*y + z*z*z*z
            if tmp%3==0 or tmp%5==0:
                i+=1
            else:
                pass
            z+=1
        y+=1
        z=0
    x+=1
    y=0
print i


####Utilisation de la mémoire et sortie du temps de fonctionnement
end = time.clock()
print h.heap()
print end-start

Je pense avoir vu ailleurs cela: passer est inutile, inutile et ne doit pas être écrit, mais je l'écris souvent. .. .. De plus, si vous quittez while une fois, puis revenez dans une boucle pour exécuter l'instruction while qui est un enfant, vous pouvez rechercher une méthode autre que la réaffectation de 0 au compteur à la sortie. .. ..

from __future__ import print_function Sera incorporé à partir de demain.

C'est tout pour ce soir.

Recommended Posts

La deuxième nuit de la boucle avec pour
La troisième nuit de la boucle avec pour
4ème nuit de boucle avec pour
Prédisez le deuxième tour de l'été 2016 avec scikit-learn
Ajouter des attributs d'objets de classe avec une instruction for
[Pour les débutants] Quantifier la similitude des phrases avec TF-IDF
L'histoire de la création d'un pilote standard pour db avec python.
Vérifiez la protection de la mémoire de Linux Kerne avec le code pour ARM
Agréger les appels quotidiens par seconde à partir des journaux du serveur Web en Python
Demandez Pi avec la commande bc
Alignez la taille de la barre de couleurs avec matplotlib
Rechercher des fichiers avec l'extension spécifiée
Vérifier l'existence du fichier avec python
Pandas du débutant, par le débutant, pour le débutant [Python]
Compter le nombre de caractères avec écho
J'ai mesuré la vitesse de la notation d'inclusion de liste, pendant et pendant avec python2.7.
Obtenez la clé pour la migration de la deuxième couche de données JSON avec python
L'histoire de l'apprentissage profond avec TPU
Remarque: préparez l'environnement de CmdStanPy avec docker
L'histoire selon laquelle le coût d'apprentissage de Python est faible
Préparer l'environnement d'exécution de Python3 avec Docker
Trouvez le différentiel du second ordre avec la différenciation automatique JAX
Mathématiques Todai 2016 résolues avec Python
[Note] Exportez le html du site avec python.
Présentation du modèle DCGAN pour Cifar 10 avec keras
Augmentez la taille de la police du graphique avec matplotlib
Calculez le nombre total de combinaisons avec python
Utilisez Logger avec Python pour le moment
Attention à la valeur de retour de __len__
J'ai joué avec Floydhub pour le moment
Éliminez les inconvénients du widget QDock avec PySide
Défiez la tour de Hanoi avec recurs + stack
Traitement d'image? L'histoire du démarrage de Python pour
Renommer la balise avec un espace de noms en lxml
Remplissez la largeur du bloc-notes Jupyter pour remplir le navigateur
Je veux ajouter du silence pendant 1 seconde au début d'un fichier wav
Vider le contenu de la base de données redis avec lua
Découvrez le jour par date / heure
La base de la théorie des graphes avec l'animation matplotlib
Code pour vérifier le fonctionnement de Python Matplot lib
Liste de contrôle pour éviter de transformer les éléments de array of numpy avec for
Visualisez le comportement de l'algorithme de tri avec matplotlib
Convertir le code de caractère du fichier avec Python3
Alignez le nombre d'échantillons entre les classes de données pour l'apprentissage automatique avec Python
[Python] Déterminez le type d'iris avec SVM
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
La première étape de l'apprentissage automatique ~ Pour ceux qui veulent essayer l'implémentation avec python ~
Construisez un serveur API pour vérifier le fonctionnement de l'implémentation frontale avec python3 et Flask
Deuxième moitié de la première journée d'étude de Python Essayez d'utiliser l'API Twitter avec Bottle
Enregistrez la sortie du GAN conditionnel pour chaque classe ~ Avec l'implémentation cGAN par PyTorch ~
Voir ici pour la quantité de mémoire libre de la commande free
Extraire le tableau des fichiers image avec OneDrive et Python
Coordonnées les plus à droite de l'étiquette faite avec tkinter
L'histoire de l'arrêt du service de production avec la commande hostname
Apprenez Nim avec Python (dès le début de l'année).
Calculer la somme des valeurs uniques par tabulation croisée des pandas
Jouez avec l'implémentation de l'interface utilisateur de Pythonista 3 [Super Super Primer]