La troisième nuit de la boucle avec pour

Oui, continue d'hier [http://d.hatena.ne.jp/shindannin/20111202/1322833089] (http://d.hatena.ne.jp/shindannin/20111202/1322833089) Que.

Round-robin utilisant des bits

Il existe 7 couleurs (rouge, orange, jaune, vert, bleu, indigo, violet) de peinture. J'ai choisi trois d'entre eux et j'ai décidé de faire un dessin. Combien de façons de choisir les peintures?

Lors de la création d'une boucle 7 fois avec pour.py


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


cou = 0 #Comptoir avec plusieurs couleurs de la peinture que vous venez de sélectionner
res = 0 #Quand une combinaison de 3 couleurs sort+1 variable
#pour la couleur dans la gamme(2):Dans le premier tour de la boucle, 0 est attribué, donc la couleur inutilisée
#Le deuxième tour est la couleur que j'utilise.
for aka in range(2):
    for daidai in range(2):
        for ki in range(2):
            for midori in range(2):
                for ao in range(2):
                    for ai in range(2):
                        for murasaki in range(2):
#Si vous ajoutez chaque couleur à la partie la plus profonde de la boucle et qu'elle est égale à 3, vous pouvez choisir 3 couleurs.
                            cou=aka+daidai+ki+midori+ao+ai+murasaki
                            if cou==3:
                                res+=1
print (res)

Si les conditions se compliquent, il n'est pas possible de traiter les erreurs d'écriture ou lorsque le nombre de couleurs données augmente, il semble donc y avoir une méthode appelée boucle utilisant des bits. Ce qui suit est une copie complète (bien qu'il soit ambigu de savoir si elle est faite)

Round-robin avec bit.py


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

max_colors = 7
result = 0
for all_color in range(1 << max_colors):
    num_colors = 0
    for color in range(max_colors):
        if (all_color & (1 << color)):
            num_colors += 1
    if num_colors == 3:
        result += 1
print (result, end='\n')

Je ne l'ai pas écrit parce que je pouvais le comprendre, et il est très probable que je ferais une erreur si je l'expliquais, alors je vais omettre l'explication ce soir. print a démarré avec de future import print_function.

Recommended Posts

La troisième nuit de la boucle avec pour
La deuxième nuit de la boucle avec pour
4ème nuit de boucle avec pour
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.
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.
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
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
Attention à la valeur de retour de __len__
Vérifiez la date du devoir de drapeau avec Python
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
Prédisez le deuxième tour de l'été 2016 avec scikit-learn
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
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
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
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]
Ajoutez des informations au bas de la figure avec Matplotlib
J'ai essayé le tutoriel MNIST de tensorflow pour les débutants.
Calculez la valeur totale de plusieurs colonnes avec awk
Exécutez avec CentOS7 + Apache2.4 + Python3.6 pour le moment
L'histoire du partage de l'environnement pyenv avec plusieurs utilisateurs
Détruire l'expression intermédiaire de la méthode sweep avec Python
Prenez des captures d'écran LCD avec Python-LEGO Mindstorms
Récapitulatif des outils d'exploitation de l'interface graphique Windows avec Python