J'ai défié AtCoder ABC164 avec Python! C'est le deuxième défi pour Rated. J'ai résolu de A à C. D Le problème était TLE.
Si s est supérieur à w, c'est sûr, sinon c'est dangereux.
A.py
s, w = map(int, input().split())
if s > w:
print("safe")
else:
print("unsafe")
Dans une boucle infinie, tournez jusqu'à ce que a ou c soit inférieur ou égal à 0 Takahashi-kun est le premier joueur, donc si les deux sont négatifs, Takahashi-kun gagnera, alors écrivons d'abord le code pour traiter flg1.
B.py
a, b, c, d = map(int, input().split())
flg1 = False
flg2 = False
while True:
c -= b
a -= d
if c <= 0:
flg1 = True
if a <= 0:
flg2 = True
if flg1:
print("Yes")
exit()
if flg2:
print("No")
exit()
Vous pouvez éliminer la duplication en choisissant set (). La réponse est le nombre sans duplication.
C.py
n = int(input())
s = [str(input()) for _ in range(n)]
print(len(set(s)))
Puisqu'il s'agit d'une double boucle, la quantité de calcul est devenue trop importante. Dans ce code, c'est TLE.
D.py
s = input()
keta = len(s)
ans = 0
mul = []
for i in range(100):
if "0" in str(2019 * i):
pass
else:
mul.append(str(2019 * i))
for i in range(len(mul)):
for j in range(0, keta + 1 - len(str(mul[i]))):
if s[j : j + len(mul[i])] == mul[i]:
ans += 1
print(ans)
C'était mon deuxième défi Je pensais que le problème A aurait pu être résolu de toute façon, mais je l'ai résolu en B et C sans remarquer que j'avais inversé dangereux et sûr, donc les performances ont considérablement baissé. Je veux être prudent la prochaine fois
Recommended Posts