[PYTHON] AtCoderBeginnerContest171 Review & Summary (erste Hälfte)

AtCoder ABC171 Dies ist eine Zusammenfassung der Probleme des AtCoder-Anfängerwettbewerbs 171, der am 21.06.2020 (So) in der Reihenfolge von Problem A unter Berücksichtigung von Problem A stattfand. Das erste Halbjahr befasst sich mit Fragen bis ABC. Das Problem wird zitiert, aber bitte überprüfen Sie die Wettbewerbsseite für Details. Klicken Sie hier für die Wettbewerbsseite Offizieller Kommentar PDF

Problem Ein α-Alphabet

Problemstellung Das $ 1 $ -Zeichen $ α $ wird entweder in Groß- oder Kleinbuchstaben eingegeben. Geben Sie "A" aus, wenn $ α $ im oberen Englisch ist, und "a", wenn es im unteren Englisch ist.

Es gibt viele Möglichkeiten zu beurteilen, ob es oben oder unten ist, aber dieses Mal habe ich `str.istitle ()` verwendet.

abc171a.py


n = input()
if n.istitle():
    print("A")
else:
    print("a")

Problem B Saft mischen

Problemstellung Ein Geschäft verkauft $ N $ Obstsorten, Früchte $ 1,…, N $ zu Preisen von jeweils $ p_1,…, p_N $ Yen. Wenn Sie in diesem Geschäft nacheinander $ K $ Obstsorten kaufen, fragen Sie nach dem minimal möglichen Gesamtpreis für diese.

Sie können $ k $ Obst vom billigsten kaufen, so dass Sie es leicht lösen können, indem Sie den Preis sortieren.

abc171b.py


n, k = map(int, input().split())
p_list = list(map(int, input().split()))
p_list = sorted(p_list)
print(sum(p_list[:k]))

C Problem Eine Billiarde und ein Dalmatiner

Problemstellung Roger beschloss, alle $ 1000000000000001 $ Hunde zu behalten, die ihm plötzlich erschienen. Die Hunde waren ursprünglich von $ 1 $ bis $ 1000000000000001 $ nummeriert, aber Roger gab ihnen Namen nach den folgenden Regeln: ・ Die Hunde mit den Nummern $ 1,2, ⋯, 26 $ heißen in dieser Reihenfolge a, b, ..., z. ・ Die Hunde mit den Nummern $ 27,28,29, ⋯, 701,702 $ heißen in dieser Reihenfolge aa, ab, ac, ..., zy, zz. ・ Die Hunde mit den Nummern $ 703.704.705, ⋯, 18277.18278 $ heißen in dieser Reihenfolge aaa, aab, aac, ..., zzy, zzz. ・ Die Hunde mit den Nummern $ 18279,18280,18281, ⋯, 475253,475254 $ heißen in dieser Reihenfolge aaaa, aab, aaaac, ..., zzzy, zzzz. ・ Die Hunde mit der Nummer $ 475255,475256, ⋯ $ heißen in dieser Reihenfolge aaaaa, aaaab, .... ・ (Unten weggelassen) Mit anderen Worten, wenn Sie die von Roger angegebenen Namen in numerischer Reihenfolge sortieren: a, b, ..., z, aa, ab, ..., az, ba, bb, ..., bz, ..., za, zb, ..., zz, aaa, aab ,. .., aaz, aba, abb, ..., abz, ..., zzz, aaaa, ... Roger hat dir ein Problem verursacht. "Beantworten Sie den Namen des Hundes mit der Nummer $ N $."

Ich dachte, dass es mit einer 26-jährigen Idee gelöst werden könnte, also habe ich es umgesetzt und es hat bestanden.

abc171c.py


n = int(input())
n = n - 1
mozi_list = []
while True:
    k = n % 26
    n = n // 26 - 1
    chr_s = chr(97 + k)
    mozi_list.append(chr_s)
    if n == -1:
        break
for i in range(len(mozi_list)):
    print(mozi_list[len(mozi_list)-i-1], end="")

Dies ist das Ende der ersten Hälfte. Dieses Mal wurde die Erklärung sehr sorgfältig geschrieben, daher hoffe ich, dass Sie sich für die detaillierte Lösung darauf beziehen können. Vielen Dank für das Lesen bis zum Ende der ersten Hälfte.

In der zweiten Hälfte wird das DEF-Problem erläutert. Fortsetzung in der zweiten Hälfte.

Recommended Posts

AtCoderBeginnerContest175 Review & Summary (erste Hälfte)
AtCoderBeginnerContest169 Review & Summary (erste Hälfte)
AtCoderBeginnerContest174 Review & Summary (erste Hälfte)
AtCoderBeginnerContest173 Review & Summary (Erste Hälfte)
AtCoderBeginnerContest165 Review & Summary (erste Hälfte)
AtCoderBeginnerContest170 Review & Summary (erste Hälfte)
AtCoderBeginnerContest167 Review & Summary (erste Hälfte)
AtCoderBeginnerContest177 Review & Summary (erste Hälfte)
AtCoderBeginnerContest168 Review & Summary (erste Hälfte)
AtCoderBeginnerContest178 Review & Summary (erste Hälfte)
AtCoderBeginnerContest171 Review & Summary (erste Hälfte)
AtCoderBeginnerContest166 Review & Summary (erste Hälfte)
AtCoderBeginnerContest161 Review & Summary (erste Hälfte)
AtCoderBeginnerContest172 Review & Summary (erste Hälfte)
AtCoderBeginnerContest176 Review & Summary (erste Hälfte)
AtCoderBeginnerContest178 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest161 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest164 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest176 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest168 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest166 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest171 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest174 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest173 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest177 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest180 Review & Zusammenfassung
AtCoderBeginnerContest181 Überprüfung & Zusammenfassung
AtCoderBeginnerContest182 Überprüfung & Zusammenfassung
AtCoderBeginnerContest183 Überprüfung & Zusammenfassung
AtCoderBeginnerContest179 Review & Zusammenfassung
AtCoder Rückblick auf frühere Fragen (erste Hälfte von 12 / 8,9)