[PYTHON] ABC146 Impressionen

Teilnahme am AtCoder Beginner Contest 146

Normalerweise nehme ich am Wettbewerb teil → Am Ende überprüfe ich ihn, aber ich wollte meine Gedanken während des Wettbewerbs aufzeichnen, deshalb habe ich beschlossen, einen Artikel zu schreiben. (Ich weiß nicht, wie lange es dauern wird)

Problem A - Ich kann nicht auf Urlaub warten

Ich habe es ehrlich umgesetzt.

A.py


S = input()

if S == "SUN":
    print(7)
elif S == "MON":
    print(6)
elif S == "TUE":
    print(5)
elif S == "WED":
    print(4)
elif S == "THU":
    print(3)
elif S == "FRI":
    print(2)
else:
    print(1)

Problem B-ROT N.

Ich wusste also nicht, wie man Buchstaben in ASCII-Code konvertiert Ich fragte den Google-Lehrer und fand heraus, ob ord () und chr ().

Drücken Sie das Zielzeichen als "0 bis 25" aus, addieren Sie N, um es N-mal zu verschieben, und dividieren Sie durch 26, um den Rest zu finden. Fügen Sie abschließend "ord (" A ")" hinzu, um zum ASCII-Code des oberen Alphabets zurückzukehren. Die Antwort wurde erhalten, indem dies für jedes Zeichen getan wurde.

B.py


N = int(input())
S = input()

new_s = []
for c in S:
    new_s.append(chr((ord(c) - ord("A") + N) % 26 + ord("A")))

print("".join(new_s))

Problem C - Kaufen Sie eine Ganzzahl

Zuerst habe ich eine vollständige Suche nach N durchgeführt, aber es war TLE. (Korrekt) Ich dachte, dass PyPy bestehen würde (?) Und wiederholte TLE. Unterwegs wurde mir klar, dass eine Dichotomie verwendet werden kann, um den "Maximalwert zu finden, der die Bedingungen erfüllt". Ich konnte es bestehen.

Es ist bedauerlich, dass ich mich zu sehr an eine Methode gehalten habe und 30 Minuten gebraucht habe, um die zweiminütige Suche zu erreichen.

C.py


a,b,x = map(int, input().split())

left = 0
right = 10**9 + 1
while right > left + 1:
    n = (left + right) // 2
    if a * n + b * len(str(n)) <= x:
        left = n
    else:
        right = n

print(left)

Problem D-Farbkanten am Baum

Es war völlig nutzlos. Das Grafikproblem bekommt eine Ablehnungsreaktion, sobald ich es sehe, also möchte ich irgendwo hart lernen, aber ich habe es nicht berührt ...

Hast du gute Lernmaterialien? ??

Zusammenfassung

Ich möchte bald grün werden!

Recommended Posts

ABC146 Impressionen
ABC168
ABC164
ABC174
ABC175
ABC170
ABC182
ABC153
AtCoder ABC176
ABC167 WriteUp
AtCoder ABC177
Anfänger ABC154 (Python)
Anfänger ABC156 (Python)
abc154 teilnahmebericht
Anfänger ABC155 (Python)
Anfänger ABC157 (Python)
AtCoder ABC 175 Python