Vorsichtsmaßnahmen bei der Verwendung von Python mit AtCoder

DP-Bildungswettbewerb B - Frosch 2 , es gibt einen Fall, in dem der folgende Code unweigerlich zu TLE wird, also habe ich ihn bei PyPy eingereicht Es wird leicht AC. Als ich später nachforschte, stellte sich heraus, dass derselbe Algorithmus je nach verwendeter Sprache AC sein kann ( Referenz ). Python-Benutzer sollten PyPy auswählen, es sei denn, sie verwenden eine Bibliothek, die nicht in PyPy implementiert ist. Seien Sie jedoch vorsichtig, da dies viel Speicherplatz beansprucht. Als ich es mit Frog1 ausprobiert habe, verbraucht es mit derselben Quelle ungefähr viermal so viel Speicher.

Sprache Erinnerung
Python(3.82) 20524 KB
PyPy3 (7.3.0) 84904 KB
import sys

sys.setrecursionlimit(250000)
input = sys.stdin.readline

def main():
    n, k = map(int, input().split())
    h = list(map(int,input().split()))

    cost = [sys.maxsize]*n
    cost[0] = 0
    for i in range(0,n):
        for j in range(1, k + 1):
            if (i+ j>= n):
                break
            abs_ = abs(h[i] - h[i+j])
            if cost[i+j] >cost[i] + abs_ :
                cost[i+j] = cost[i] + abs_
    print(cost[n-1])
main()

Recommended Posts

Vorsichtsmaßnahmen bei der Verwendung von Python mit AtCoder
Dinge, die Sie bei der Verwendung von CGI mit Python beachten sollten.
Dinge, die Sie bei der Entwicklung von Crawlern in Python beachten sollten
Dinge, die Sie beim Kopieren von Python-Listen beachten sollten
Dinge, die Sie bei der Verarbeitung von Zeichenfolgen in Python2 beachten sollten
Dinge, die Sie bei der Verarbeitung von Zeichenfolgen in Python 3 beachten sollten
Dinge, die Sie bei der Verwendung von Python beachten sollten, wenn Sie MATLAB verwenden
Beachten Sie Folgendes, wenn Sie mit ndarray einen Zeilenvektor in einen Spaltenvektor konvertieren
Beachten Sie Folgendes, wenn Sie automatisierte Tools für die Werkstatt in Python erstellen
Dinge, auf die Sie achten müssen, wenn Sie Standardargumente in Python verwenden
Beachten Sie Folgendes, wenn Sie Keras auf Ihrem Mac bereitstellen
Beachten Sie beim Initialisieren einer Liste in Python
Beenden bei Verwendung von Python in Terminal (Mac)
Drei Dinge, von denen ich süchtig war, als ich Python und MySQL mit Docker verwendete
Dinge, die Sie bei der Stapelvorhersage mit der GCP ML Engine beachten sollten
Vorsichtsmaßnahmen bei der Verwendung von Pit mit Python
Bei Verwendung von MeCab mit virtualenv python
Vorsichtsmaßnahmen bei Verwendung von sechs mit Python 2.5
Bei Verwendung regulärer Ausdrücke in Python
So melden Sie sich mit Python bei AtCoder an und senden automatisch
Ich kenne? Datenanalyse mit Python oder Dingen, die Sie mit numpy verwenden möchten, wenn Sie möchten
Zusammenfassung der Punkte, die beim Schreiben eines Programms zu beachten sind, das unter Python 2.5 ausgeführt wird
Wie man Japanern nicht entgeht, wenn man mit json in Python umgeht
Versuchen Sie, sich mit Python bei qiita anzumelden
So arbeiten Sie mit BigQuery in Python
Melden Sie sich mit Anforderungen in Python bei Slack an
So betreiben Sie die Zeitstempelstation in Python
Umgang mit OAuth2-Fehlern bei Verwendung von Google APIs aus Python
Vorsichtsmaßnahmen beim Umgang mit Kontrollstrukturen in Python 2.6
Zeichenkodierung beim Umgang mit Dateien in Python 3
Wie man tkinter mit Python in Pyenv benutzt
Fehler beim Versuch, psycopg2 in Python zu installieren
Materialien zum Lesen, wenn Sie mit Python beginnen
[Fenwick_Tree] AtCoder Library liest mit einem grünen Codierer ~ Implementierung in Python ~
Was verwenden Sie beim Testen mit Python?
Beachten Sie bei der Verwendung von PyQtGraph mit Python Pyside die Reihenfolge des Imports
So senden Sie automatisch E-Mails mit Anhängen mithilfe der Google Mail-API in Python
AtCoder # 2 jeden Tag mit 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
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 # 11 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
Täglicher AtCoder # 10 mit Python
AtCoder # 5 jeden Tag mit Python
Täglicher AtCoder # 28 in Python