In 3 Minuten durchbrechen. Alles ausprobieren.
A, B, C, D = map(int, input().split())
s = sum([A, B, C, D])
for x in [A, B, C, D, A + B, A + C, A + D, B + C, B + D, C + D]:
if x == s - x:
print('Yes')
break
else:
print('No')
Es bricht in 10 Minuten durch. Selbstverständlich, wenn Sie es naiv simulieren, auch wenn Sie den Maximalwert mit hoher Geschwindigkeit mit einer Prioritätswarteschlange abrufen können, TLE verzweifelt, wenn der Minimalwert x = 1 ist. Verwenden Sie jedoch den Rest Ist es ein Dämon, der TLEs, auch wenn es simuliert wird?
Wenn Sie feststellen, dass diese Berechnung tatsächlich ein Problem darstellt, um das maximale Versprechen zu finden, können Sie es wie folgt lösen.
from math import gcd
from functools import reduce
N, *a = map(int, open(0).read().split())
print(reduce(gcd, a))
Verloren. Ungefähr 10 Minuten vor dem Ende bestand das Eingabe- / Ausgabebeispiel und ich dachte "Ich habe es geschafft!", Aber ungefähr die Hälfte davon war WA und TLE ...
Recommended Posts