Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part3-

Einführung

Hallo. Es ist zäh und zäh. Wir werden die Einführung in die Algorithmen und Datenstrukturen von AOJ lösen. Es ist einfach, aufzuzeichnen, was Sie gelernt haben.

Es ist weniger als ein halbes Jahr her, seit ich anfing, mich selbst mit dem Programmieren zu beschäftigen AtCoder ist grün, also bin ich kein starker Mann. Lass uns hart zusammenarbeiten.

mach es möglich mit Pai-chan

Inhaltsverzeichnis

Diesmal TEIL 3: Grundlegende Datenstruktur. Ich möchte mein Bestes geben und es bis zum Ende tun.

ALDS1_3_A: Stapel ALDS1_3_B: Warteschlange ALDS1_3_C: Bidirektionale verkettete Liste ALDS1_3_D : Areas on the Cross-Section Diagram

ALDS1_3_A: Stapel

Stapel ~

a = list(map(str,input().split()))
l = []
for i in a:
    if i=="+":
        a1 = l.pop()
        a2 = l.pop()
        a3 = a1+a2
        l.append(a3)

    elif i=="-":
        a1 = l.pop()
        a2 = l.pop()
        a3 = a2-a1
        l.append(a3)

    elif i=="*":
        a1 = l.pop()
        a2 = l.pop()
        a3 = a1*a2
        l.append(a3)

    else:
        l.append(int(i))

print(l[0])

ALDS1_3_B: Warteschlange

Verwenden wir deque

from collections import deque
n,q = map(int,input().split())
l = [list(map(str,input().split())) for _ in range(n)]
time = 0
dq = deque(l)
while dq:
    a,b = dq.popleft()
    if int(b)<= q:
        time += int(b)
        print(a,time)

    else:
        time += q
        b = int(b) - q
        dq.append([a,b])

ALDS1_3_C: Bidirektionale verkettete Liste

Grundsätzlich mit deque berechnet Wenn Sie in Python die folgenden zwei Punkte nicht ausführen, wird es zu TLE ・ Es ist schneller, Eingaben selbst zu definieren ・ Wenn Sie keinen Index benötigen, ist a in d: schneller


from collections import deque
import sys
input = sys.stdin.readline
n = int(input())
d = deque([])
for _ in range(n):
    a = list(map(str,input().split()))
    if a[0]=="insert":
        d.appendleft(a[1])


    elif a[0]=="delete":
        if a[1] in d:
            d.remove(a[1])

    elif a[0]=="deleteFirst":
        s = d.popleft()


    elif a[0]=="deleteLast":
        s = d.pop()

print(*d)

ALDS1_3_D : Areas on the Cross-Section Diagram

Es ist noch nicht geschmolzen ... Pien




abschließend

Ich werde es aktualisieren, wenn D schmilzt. Ich werde nicht rauchen

Recommended Posts

Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part1-
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part2-
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part4-
Lösen der Einführung von AOJ in Algorithmen und Datenstrukturen in Python -Part3-
[Einführung in cx_Oracle] (Teil 9) Zuordnung von DB- und Python-Datentypen (Version 8 oder höher)
[Einführung in die Udemy Python3 + -Anwendung] 36. Verwendung von In und Not
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und Klassen
Einführung in die Effektüberprüfung Schreiben der Kapitel 4 und 5 in Python
Einführung in Python Scikit-Learn, Matplotlib, Single-Layer-Algorithmus (~ in Richtung B3 ~ Teil3)
[Einführung in Python] Kombinieren Sie Nikkei-Durchschnitts- und NY Dow-CSV-Daten
[Einführung in Python3 Tag 1] Programmierung und Python
Lesen von Notizen (in Python und Stan) zur Einführung in die statistische Modellierung für die Datenanalyse (Midorimoto)
Verarbeitung zur Verwendung von notMNIST-Daten in Python (und versucht, sie zu klassifizieren)
[Einführung in Data Scientists] Grundlagen von Python ♬ Bedingte Verzweigung und Schleifen
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und anonyme Funktionen usw.
[Einführung in Python] Wie verwende ich eine Klasse in Python?
AM-Modulation und Demodulation mit Python Part 2
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.1-8.2.5)
Ali Buch in Python: Abschnitt 2-4, Datenstruktur
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.3-8.3.6.1)
Web-WF Python Tornado Teil 3 (Einführung in Openpyexcel)
[Einführung in Python3 Tag 19] Kapitel 8 Datenziele (8.4-8.5)
Zeichnen Sie Daten einfach in Shell und Python
Verwendung ist und == in Python
"Einführung in die Datenanalyse durch statistische Bayes'sche Modellierung beginnend mit R und Stan" in Python implementiert
Einführung in Vektoren: Lineare Algebra in Python <1>
Einführung in die Überprüfung der Wirksamkeit Kapitel 1 in Python geschrieben
[Einführung in Data Scientist] Grundlagen von Python ♬
[Python] [Ergänzung] Kapitel 04-09 Verschiedene Datenstrukturen (Mengenlehre und Arithmetik in Mengen)
Was ist ein Algorithmus? Einführung in den Suchalgorithmus] ~ Python ~
So generieren Sie eine Sequenz in Python und C ++
Einführung in die Überprüfung der Wirksamkeit Kapitel 3 in Python geschrieben
Python-Variablen und Datentypen, die mit Chemoinfomatik gelernt wurden
Empfangen und Anzeigen von HTML-Formulardaten in Python
tse - Einführung in den Text Stream Editor in Python
[Python] Vertauschen von Zeilen und Spalten mit Numpy-Daten
[Python] Lesen von Daten aus CIFAR-10 und CIFAR-100
[Einführung in Python3, Tag 22] Kapitel 11 Parallele Verarbeitung und Vernetzung (11.1 bis 11.3)
Senden Sie eine Nachricht an Skype und Chatwork in Python
[Einführung in Python] Umgang mit Daten im JSON-Format
[Einführung in die Udemy Python3 + -Anwendung] 64. Namespace und Gültigkeitsbereich
[Einführung in Python3 Tag 11] Kapitel 6 Objekte und Klassen (6.1-6.2)
[Einführung in den Algorithmus] Finden Sie den kürzesten Weg [Python3]
Einführung in die Überprüfung der Wirksamkeit Kapitel 2 in Python geschrieben
Zur Darstellung von Datum, Uhrzeit, Uhrzeit und Sekunden in Python
Wie man Autokorrelation und partielle Autokorrelation mit Python zeichnet
[Python] So benennen Sie Tabellendaten und geben sie mit csv aus (to_csv-Methode)
Einführung in die Zeitreihenanalyse ~ Saisonales Anpassungsmodell ~ In R und Python implementiert
[Einführung in die Udemy Python3 + -Anwendung] 35. Vergleichsoperatoren und logische Operatoren
Konvertieren Sie Datum und Uhrzeit in Zeitzonen in Unixtime in Python2.7
Zusammenfassung der Tools, die zum Analysieren von Daten in Python benötigt werden
Verarbeitung von CSV-Daten in voller und halber Breite in Python
[Einführung in die Stärkung des Lernens] Teil 1 - Epsilon-Greedy-Algorithmus im Banditenspiel
[Einführung in die Elementzerlegung] Lassen Sie uns Zeitreihenanalysemethoden in R und Python arrange anordnen
Genetischer Algorithmus in Python
Lesehinweis: Einführung in die Datenanalyse mit Python
Einführung in die Python-Sprache
Einführung in OpenCV (Python) - (2)
Ich habe versucht, GA (genetischer Algorithmus) in Python zu implementieren
[Einführung in Python] Zusammenfassung der Funktionen und Methoden, die häufig in Python vorkommen [Problemformat]
Schreiben Sie Tests in Python, um die Abdeckung zu profilieren und zu überprüfen