Täglicher AtCoder # 29 in Python

Einführung

Letztes Mal Wenn Sie empfohlene Probleme haben, hinterlassen Sie bitte einen Kommentar oder Twitter. #29 Problem

** Gedanken ** Anfangs wurde es normal implementiert (umgekehrt), aber umgekehrt ist teuer und muss gut gehandhabt werden. Sie können deque verwenden, da Sie am Anfang oder am Ende Zeichen hinzufügen können. Anstatt eine nach der anderen umzukehren, können Sie auch die vorderen und hinteren Beschriftungen erstellen und bei jedem Umkehren umkehren.

from collections import deque

s = deque(input())
q = int(input())
query = [input().split() for _ in range(q)]

reverse = False #Vorher und nachher urteilen
for i in query:
    if len(i) == 1:
        if reverse:
            reverse = False
        else:
            reverse = True
    else:
        if reverse:
            if i[1] == '1':
                s.append(i[2])
            else:
                s.appendleft(i[2]) #An der Spitze anhängen
        else:
            if i[1] == '1':
                s.appendleft(i[2]) #An der Spitze anhängen
            else:
                s.append(i[2])
if reverse: #s muss umgekehrt werden, wenn umgekehrt aktiviert ist
    s = reversed(s)
    s = ''.join(s)
    print(s)
else:
    s = ''.join(s)
    print(s)

Ich denke, die Wahrheit der Umkehrung kann besser gehandhabt werden.

Zusammenfassung

Ich habe gelernt, dass das Manipulieren von Strings langsam ist. Es scheint, dass es besser ist, list oder deque zu verwenden, als str für das Problem, dass der Ort, an dem gearbeitet werden soll, wie diesmal entschieden wird. wir sehen uns. Gute Nacht.

Recommended Posts

Täglicher AtCoder # 36 mit Python
AtCoder # 2 jeden Tag mit Python
Täglicher AtCoder # 32 in Python
Täglicher AtCoder # 6 in Python
Täglicher AtCoder # 18 in Python
Täglicher AtCoder # 53 in Python
Täglicher AtCoder # 33 in Python
Täglicher AtCoder # 7 in Python
AtCoder # 24 jeden Tag mit Python
Täglicher AtCoder # 37 in Python
AtCoder # 8 jeden Tag mit Python
Täglicher AtCoder # 42 in Python
Täglicher AtCoder # 21 mit Python
Täglicher AtCoder # 17 mit Python
Täglicher AtCoder # 38 in Python
Täglicher AtCoder # 54 in Python
Täglicher AtCoder # 15 in Python
Täglicher AtCoder # 47 mit Python
Täglicher AtCoder # 13 in Python
Täglicher AtCoder # 45 mit Python
AtCoder # 30 jeden Tag in Python
Täglicher AtCoder # 40 mit Python
AtCoder # 5 jeden Tag mit Python
Täglicher AtCoder # 28 in Python
Täglicher AtCoder # 39 in Python
Täglicher AtCoder # 20 in Python
Täglicher AtCoder # 19 in Python
Täglicher AtCoder # 52 in Python
Täglicher AtCoder # 3 in Python
Täglicher AtCoder # 14 mit Python
Täglicher AtCoder # 50 mit Python
Täglicher AtCoder # 43 in Python
Täglicher AtCoder # 29 in Python
Jeden Tag mit Python AtCoder # 22
Täglicher AtCoder # 49 in Python
Täglicher AtCoder # 27 in Python
AtCoder # 1 jeden Tag mit Python
Täglicher AtCoder # 25 mit Python
Täglicher AtCoder # 16 in Python
Täglicher AtCoder # 12 in Python
Täglicher AtCoder # 48 in Python
Täglicher AtCoder # 23 in Python
Täglicher AtCoder # 34 in Python
Täglicher AtCoder # 51 mit Python
Täglicher AtCoder # 31 in Python
Jeden Tag mit Python AtCoder # 46
Täglicher AtCoder # 35 mit Python
AtCoder # 9 jeden Tag mit Python
Täglicher AtCoder # 44 mit Python
Jeden Tag mit Python AtCoder # 41
Atcoder ABC164 A-C in Python
atCoder 173 Python
Atcoder ABC167 A-D in Python
Atcoder ABC165 A-D in Python
Atcoder ABC166 A-E in Python
Atcoder ABC169 A-E in Python
AtCoder ABC177 A-D mit Python
[Python] Grundkenntnisse in AtCoder
Quadtree in Python --2
Python in der Optimierung
CURL in Python