[PYTHON] Die dritte Nacht der Runde mit für

Ja, mach weiter von gestern [http://d.hatena.ne.jp/shindannin/20111202/1322833089] (http://d.hatena.ne.jp/shindannin/20111202/1322833089) Als.

Round-Robin mit Bits

Es gibt 7 Farben (rot, orange, gelb, grün, blau, indigo, lila) der Farbe. Ich wählte drei davon aus und beschloss, ein Bild zu zeichnen. Wie viele Möglichkeiten, Farben auszuwählen?

Bei der Herstellung einer 7-fachen Schleife mit für.py


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


cou = 0 #Zähler mit mehreren Farben der Farbe, die Sie gerade ausgewählt haben
res = 0 #Wenn eine Kombination von 3 Farben herauskommt+1 Variable
#für Farbe im Bereich(2):In der ersten Runde der Schleife wird 0 zugewiesen, also die nicht verwendete Farbe
#Die zweite Runde ist die Farbe, die ich benutze.
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):
#Wenn Sie jede Farbe am tiefsten Teil der Schleife hinzufügen und sie gleich 3 ist, können Sie 3 Farben auswählen.
                            cou=aka+daidai+ki+midori+ao+ai+murasaki
                            if cou==3:
                                res+=1
print (res)

Wenn die Bedingungen kompliziert werden, ist es nicht möglich, Fehler beim Schreiben zu behandeln, oder wenn die Anzahl der angegebenen Farben zunimmt, so scheint es eine Methode zu geben, die für eine Schleife unter Verwendung von Bits aufgerufen wird. Das Folgende ist eine vollständige Kopie (obwohl es nicht eindeutig ist, ob es gemacht wird)

Round-Robin mit 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')

Ich habe es nicht geschrieben, weil ich es verstehen konnte, und es ist sehr wahrscheinlich, dass ich einen Fehler machen würde, wenn ich es erklären würde, also werde ich die Erklärung heute Abend weglassen. Der Druck begann mit future import print_function.

Recommended Posts

Die dritte Nacht der Runde mit für
Die zweite Nacht der Runde mit für
4. Nacht der Schleife mit für
Fügen Sie Attribute von Klassenobjekten mit einer for-Anweisung hinzu
[Für Anfänger] Quantifizieren Sie die Ähnlichkeit von Sätzen mit TF-IDF
Die Geschichte, einen Standardtreiber für db mit Python zu erstellen.
Fragen Sie mit dem Befehl bc nach Pi
Richten Sie die Größe der Farbleiste an der Matplotlib aus
Suchen Sie nach Dateien mit der angegebenen Erweiterung
Überprüfen Sie die Existenz der Datei mit Python
Pandas des Anfängers, vom Anfänger, für den Anfänger [Python]
Zählen Sie die Anzahl der Zeichen mit Echo
Ich habe die Geschwindigkeit der Listeneinschlussnotation für und während mit Python2.7 gemessen.
Die Geschichte des tiefen Lernens mit TPU
Hinweis: Bereiten Sie die Umgebung von CmdStanPy mit Docker vor
Die Geschichte, dass die Lernkosten von Python niedrig sind
Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor
2016 Todai Mathematik mit Python gelöst
[Hinweis] Exportieren Sie das HTML der Site mit Python.
Belichtung des DCGAN-Modells für Cifar 10 mit Keras
Erhöhen Sie die Schriftgröße des Diagramms mit matplotlib
Berechnen Sie die Gesamtzahl der Kombinationen mit Python
Achten Sie auf den Rückgabewert von __len__
Überprüfen Sie das Datum der Flaggenpflicht mit Python
Ich habe vorerst mit Floydhub gespielt
Beseitigen Sie die Unannehmlichkeiten von QDock Widget mit PySide
Fordern Sie den Turm von Hanoi mit Wiederholungen + Stapel heraus
Bildverarbeitung? Die Geschichte, Python für zu starten
Schreiben Sie den Namen des Tags mit dem Namespace in lxml neu
Füllen Sie die Breite des Jupyter-Notizbuchs, um den Browser zu füllen
Prognostizieren Sie die zweite Runde des Sommers 2016 mit scikit-learn
Entleere den Inhalt der Redis-Datenbank mit Lua
Finden Sie den Tag nach Datum / Uhrzeit heraus
Die Basis der Graphentheorie mit Matplotlib-Animation
Code zum Überprüfen des Betriebs von Python Matplot lib
Checkliste, wie Sie vermeiden können, die Elemente des Numpy-Arrays mit for zu drehen
Visualisieren Sie das Verhalten des Sortieralgorithmus mit matplotlib
Konvertieren Sie den Zeichencode der Datei mit Python3
Richten Sie die Anzahl der Stichproben zwischen Datenklassen für maschinelles Lernen mit Python aus
[Python] Bestimmen Sie den Typ der Iris mit SVM
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
Der erste Schritt des maschinellen Lernens ~ Für diejenigen, die versuchen möchten, mit Python zu implementieren ~
Erstellen Sie einen API-Server, um den Betrieb der Front-Implementierung mit Python3 und Flask zu überprüfen
Speichern Sie die Ausgabe der bedingten GAN für jede Klasse ~ Mit der cGAN-Implementierung von PyTorch ~
Hier finden Sie die Menge an freiem Speicher des Befehls free
Ganz rechts Koordinaten des Etiketts mit tkinter erstellt
Die Geschichte des Stoppens des Produktionsdienstes mit dem Befehl hostname
Berechnen Sie die Summe der eindeutigen Werte durch Pandas-Kreuztabellen
Spielen Sie mit der Implementierung der Pythonista 3-Benutzeroberfläche [Super Super Primer]
Fügen Sie mit Matplotlib Informationen am unteren Rand der Abbildung hinzu
Ich habe das MNIST-Tutorial von tensorflow für Anfänger ausprobiert.
Berechnen Sie den Gesamtwert mehrerer Spalten mit awk
Führen Sie es vorerst mit CentOS7 + Apache2.4 + Python3.6 aus
Die Geschichte des Teilens der Pyenv-Umgebung mit mehreren Benutzern
Zerstören Sie den Zwischenausdruck der Sweep-Methode mit Python
Machen Sie LCD-Screenshots mit Python-LEGO Mindstorms
Zusammenfassung der Tools zum Betreiben der Windows-Benutzeroberfläche mit Python