[PYTHON] AtCoder Regular Contest # 002 C Problem

hi! Come to think of it, no one has written in English, but I wonder if scolded?

Ich dachte, ich sollte weiter auf Englisch schreiben, aber ich gab auf, weil es zu unmöglich war. [http://arc002.contest.atcoder.jp/tasks/arc002_3] (http://arc002.contest.atcoder.jp/tasks/arc002_3) ARC # 002 ist bereits im Mai letzten Jahres, also ist es lange her. Es ist. Als ich es heute Abend löste, war es mir jedoch peinlich zu sterben, weil die Verarbeitungsgeschwindigkeit verloren ging, obwohl die Antwort zu dieser Zeit ein mysteriöser Schreibstil war.

Neue Antwort.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math
 
N=int(raw_input())
c=raw_input()
chk=['AA','AB','AX','AY',
     'BA','BB','BX','BY',
     'XA','XB','XX','XY',
     'YA','YB','YX','YY']
cnt=1000
for i in chk:
    c2=c.replace(i,'L')
    for j in chk:
        c3=c2.replace(j,'R')
        cnt=min(cnt,len(c3))
print cnt

Da ich ausnahmslos versuche, AA durch L oder R aus der Liste der chk zu ersetzen, habe ich in der ersten Runde der Doppelschleife AA durch L in i ersetzt, aber ich habe in j nach AA gesucht und dann bleibt A übrig Ich werde nach AB und AX suchen. Dank der losen Zeit- und Speichergrenzen wird der Wechselstrom durchgelassen. Ja.

Dann wurde der folgende vor ungefähr anderthalb Jahren geschrieben.

Alte Antwort.py


import sys
 
M=raw_input()
N=raw_input()
x=[]
 
N2=N.replace('AA','L');N3=N2.replace('AB','R');x.append(len(N3))
N2=N.replace('AA','L');N3=N2.replace('AX','R');x.append(len(N3))
N2=N.replace('AA','L');N3=N2.replace('AY','R');x.append(len(N3))
N2=N.replace('AA','L');N3=N2.replace('BA','R');x.append(len(N3))
N2=N.replace('AA','L');N3=N2.replace('BB','R');x.append(len(N3))
N2=N.replace('AA','L');N3=N2.replace('BX','R');x.append(len(N3))
#
#Während dieser Zeit liste ich ernsthaft alle Kombinationen auf. Ja wirklich.
#
N2=N.replace('YA','L');N3=N2.replace('YY','R');x.append(len(N3))
N2=N.replace('YB','L');N3=N2.replace('YB','R');x.append(len(N3))
N2=N.replace('YB','L');N3=N2.replace('YX','R');x.append(len(N3))
N2=N.replace('YB','L');N3=N2.replace('YY','R');x.append(len(N3))
N2=N.replace('YX','L');N3=N2.replace('YX','R');x.append(len(N3))
N2=N.replace('YX','L');N3=N2.replace('YY','R');x.append(len(N3))
N2=N.replace('YY','L');N3=N2.replace('YY','R');x.append(len(N3))
 
x.sort()
print x[0]

Ich habe alle Kombinationen von Hand aufgelistet, suche aber nach einer Kombination, die durch L ersetzt wurde, auch durch R. Was hast du so hart geschrieben?

Recommended Posts

AtCoder Regular Contest # 002 C Problem
AtCoder Beginner Contest # 002 C Problem
AtCoder Anfängerwettbewerb 174 C Problem (Python)
AtCoder Regular Contest 105 Bewertung
AtCoder Regular Contest 106 Hinweis
AtCoder Regular Contest 105 Hinweis
AtCoder Regular Contest 106 Bewertung
AtCoder Regular Contest 104 Bewertung
AtCoder Regular Contest 105 Teilnahmebericht
AtCoder Regular Contest 104 Teilnahmebericht
AtCoder Anfängerwettbewerb 176 C Problem "Schritt" Erklärung (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 174 B Problem "Entfernung" Erklärung (C ++, Python, Java)
AtCoder-Anfängerwettbewerb 169 B Problem "Multiplikation 2" Erläuterung (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 177
AtCoder Anfängerwettbewerb 170 Ein Problem "Fünf Variablen" Erklärung (C ++, Python, Java)
AtCoder Anfängerwettbewerb 179
AtCoder Beginner Contest 169 Eine Erklärung des Problems "Multiplikation 1" (Python3, C ++, Java)
AtCoder Beginner Contest 176 Eine Erklärung des Problems "Takoyaki" (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 172
AtCoder Anfängerwettbewerb 180
AtCoder Anfängerwettbewerb 175 B Problem "Making Triangle" Erklärung (C ++, Python3, Java)
AtCoder Anfängerwettbewerb 173
AtCoder Anfängerwettbewerb 175 Ein Problem "Regenzeit" Erklärung (C ++, Python3, Java)
Atcoder Anfänger Wettbewerb 153
AtCoder-Anfängerwettbewerb 176 B Problem "Multiple of 9" Erläuterung (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 174 Ein Problem "Klimaanlage" Erklärung (C ++, Python, Java)
AtCoder-Anfängerwettbewerb 173 B Problem "Zusammenfassung des Richterstatus" Erläuterung (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 170 B Problem "Crane and Turtle" Erklärung (Python3, C ++, Java)
AtCoder Beginner Contest 177 Erklärung des C-Problems "Summe der Produktpaare" (Python3, C ++, Java)
AtCoder Anfängerwettbewerb 165 Ein Problem "Wir lieben Golf" Erklärung (Python3, C ++, Java)
AtCoder-Anfängerwettbewerb 167 B Problem "Einfache lineare Programmierung" Erläuterung (Python3, C ++, Java)
Fordern Sie AtCoder (ABC) 164 mit Python heraus! A ~ C Problem
AtCoder Anfängerwettbewerb 152 Rückblick
AtCoder Anfängerwettbewerb 181 Hinweis
AtCoder Grand Contest 041 Bewertung
AtCoder Beginner Contest 160 Bewertung
AtCoder Anfängerwettbewerb 178 Bewertung
AtCoder Anfängerwettbewerb 180 Hinweis
AtCoder Anfängerwettbewerb 166 Bewertung
AtCoder Anfängerwettbewerb 167 Bewertung
AtCoder Anfängerwettbewerb 182 Hinweis
AtCoder Beginner Contest 164 Bewertung
AtCoder Beginner Contest 169 Bewertung
AtCoder Beginner Contest 181 Bewertung
AtCoder Beginner Contest 171 Bewertung
AtCoder Beginner Contest 180 Bewertung
AtCoder Anfängerwettbewerb 156 WriteUp
AtCoder Anfängerwettbewerb 177 Rückblick
AtCoder Anfängerwettbewerb 168 Bewertung
AtCoder Grand Contest 045 Bewertung
AtCoder Grand Contest 044 Bewertung
AtCoder Beginner Contest 179 Bewertung
AtCoder Beginner Contest 167 Memorandum
AtCoder Beginner Contest 172 Bewertung
AtCoder Anfängerwettbewerb 183 Hinweis
AtCoder Anfängerwettbewerb 176 Bewertung
AtCoder Anfängerwettbewerb 184 Hinweis
AtCoder Grand Contest 046 Bewertung
AtCoder Anfängerwettbewerb 175 Bewertung