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

AtCoder ABC174 Dies ist eine Zusammenfassung der Probleme des AtCoder Beginner Contest 174, der am 2020-08-02 (So) in der Reihenfolge von Problem A unter Berücksichtigung der Berücksichtigung 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 Eine Klimaanlage

Problemstellung Sie schalten die Kühlung nur dann ein, wenn die Raumtemperatur über 30 USD liegt. Die aktuelle Raumtemperatur beträgt $ X $ Grad. Möchten Sie die Kühlung einschalten? Ausgabe Geben Sie "Ja" aus, wenn Sie die Kühlung einschalten, und "Nein", wenn Sie dies nicht tun.

abc174a.py


x = int(input())
if x >= 30:
    print("Yes")
else:
    print("No")

Problem B Entfernung

Problemstellung Auf der Dimensionsebene $ 2 $ befinden sich $ N $ Punkte. Die Koordinaten des $ i $ -ten Punktes sind $ (X_i, Y_i) $. Wie viele dieser Punkte sind weniger als $ D $ vom Ursprung entfernt? Der Abstand zwischen dem Punkt an der Koordinate $ (p, q) $ und dem Ursprung wird durch $ \ sqrt {p ^ 2 + q ^ 2} $ dargestellt.

Ich mag den Fehler bei der Berechnung der Quadratwurzel nicht, deshalb habe ich $ p ^ 2 + q ^ 2 \ leqq D ^ 2 $ verwendet, das Quadrat beider Seiten von $ \ sqrt {p ^ 2 + q ^ 2} \ leqq D $. Das Urteil wurde gefällt.

abc174b.py


n, d = map(int, input().split())
d = d * d
count = 0
for i in range(n):
    x, y = map(int, input().split())
    if x * x + y * y <= d:
        count+= 1
print(count)

C Problem Repsept

Problemstellung Takahashi mag Vielfache von $ K $ und $ 7 $. Wie viele Elemente erscheinen zum ersten Mal in der Sequenz $ 7,77,777,… $ mit einem Vielfachen von $ K $? Wenn es nicht existiert, geben Sie stattdessen '-1' aus.

Ich hatte es schwer. Ich erkannte schnell, dass es keine Vielfachen von 5 $ und 2 $ gab, aber ich persönlich fand es schwierig. Ich habe viel Zeit damit verbracht, die Eigenschaften von Repunit zu untersuchen. Meine persönliche Interpretation ist, dass die Sequenz $ 7,77,777,… $ den ersten Term $ a_1 = 7 $ hat. a_{n+1}=10a_n+7 Es kann ausgedrückt werden als. Dies kann gelöst werden, indem die Zahlenfolge in $ mod K $ berücksichtigt wird. Zum Beispiel, wenn $ K = 9 $ Der Rest der Sequenz $ 7,77,777,… $ geteilt durch $ 9 $ beträgt $ 7,5,3,1,8,6,4,2,0,7,… $, und der Artikel $ 9 $ ist ein Vielfaches von $ 9 $. Es kann gesehen werden, dass es ist. Diese Zahlenfolge sei $ b_n $. Wenn Sie sich beispielsweise auf das $ 3 $ -Element konzentrieren, kann der Rest der Division von $ 777 $ durch $ 9 $ durch $ b_3 \ equiv 10b_2 + 7 (mod 9) $ berechnet werden. Wenn es also ein Vielfaches von $ K $ gibt, ist dies das erste Mal. Da es vom Begriff zum $ K $ -Element mindestens einmal vorkommt (da der Rest geteilt durch $ K $ $ 0 \ leqq x \ leqq K-1 $ ist), beträgt der Rest $ 0 $ in diesem Bereich. Wenn es angezeigt wird, wird es ausgegeben, und wenn es nicht angezeigt wird, wird '-1' ausgegeben. In der Implementierung ist aus $ b_ {n + 1} \ equiv 10b_n + 7 (mod K) $, wenn $ K $ ein Vielfaches von $ 5 $ oder ein Vielfaches von $ 2 $ ist, $ b_n \ equiv 7 (mod K) $. Daher haben wir die Fälle dort aufgeteilt und so implementiert, dass die Schleife wiederholt wird, bis eine Antwort gegeben wird, da sie in anderen Fällen immer vorhanden ist.

abc174c.py


k = int(input())
if k % 2 == 0 or k % 5 == 0:
    print(-1)
else:
    c = 7
    count = 1
    while True:
        if c % k == 0:
            print(count)
            break
        else:
            c = (10 * c + 7) % k
            count += 1

Dies ist das Ende der ersten Hälfte. Vor kurzem wurde der offizielle Kommentar sehr sorgfältig beschrieben, 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)
AtCoderBeginnerContest164 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)
AtCoderBeginnerContest176 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest168 Review & Summary (zweite Hälfte)
AtCoderBeginnerContest169 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
Django Girls Tutorial Zusammenfassung Erste Hälfte
AtCoder Rückblick auf frühere Fragen (erste Hälfte von 12 / 8,9)