Percer en 2 minutes. Il suffit d'écrire.
M1, D1 = map(int, input().split())
M2, D2 = map(int, input().split())
if D2 == 1:
print(1)
else:
print(0)
Il a éclaté en quatre minutes et demie, je ne savais pas quoi faire s'il ne devenait pas un entier, puis je l'ai publié correctement, mais c'était AC.
N = int(input())
X = N / 1.08
if int(X) * 108 // 100 == N:
print(int(X))
elif int(X + 1) * 108 // 100 == N:
print(int(X + 1))
else:
print(':(')
Percer en 7 minutes et demie WA1 Je pensais que c'était plus difficile que le récent problème d'ABC C. WA n'était pas parce que c'était difficile, mais juste un chombo.
X = int(input())
dp = [0] * (X + 1 + 105)
dp[0] = 1
for i in range(X):
if dp[i] == 1:
for j in range(100, 106):
dp[i + j] = 1
print(dp[X])
Il se décompose en 22 minutes et demie. Puisqu'il y a 3 caractères, il n'y a que 1000 motifs au maximum de 000 à 999, donc je peux me permettre d'essayer tous les motifs, mais si N ≤ 30000, cela semble être TLE, donc si 4 caractères ou plus du même caractère sont consécutifs, ce sera 3 J'ai compressé et recherché. Puisque seulement 3 caractères sont utilisés de toute façon, une séquence de 4 caractères ou plus n'a aucun sens.
N = int(input())
S = input()
t = [S[0]]
p = S[0]
r = 1
for i in range(1, N):
if S[i] == p:
r += 1
if r < 4:
t.append(S[i])
else:
r = 1
t.append(S[i])
T = ''.join(t)
result = 0
for i in range(10):
a = T.find(str(i))
if a == -1:
continue
for j in range(10):
b = T.find(str(j), a + 1)
if b == -1:
continue
for k in range(10):
if T.find(str(k), b + 1) != -1:
result += 1
print(result)
Addendum: je n'ai pas eu besoin de le compresser (^^; je pensais qu'il y avait un cas de test extrême où il y avait une suite après une série d'environ 30 000 caractères. Sinon, ce ne serait pas un problème de difficulté D.
N = int(input())
S = input()
result = 0
for i in range(10):
a = S.find(str(i))
if a == -1:
continue
for j in range(10):
b = S.find(str(j), a + 1)
if b == -1:
continue
for k in range(10):
if S.find(str(k), b + 1) != -1:
result += 1
print(result)
Percer en 28 minutes WA1 Je ne voulais pas croire que A1 était égal à 0. Continuez simplement à appliquer les modèles possibles depuis le début. E Facile pour les problèmes.
N = int(input())
A = list(map(int, input().split()))
result = 1
t = [0, 0, 0]
for i in range(N):
a = A[i]
f = -1
k = 0
for j in range(3):
if t[j] == a:
k += 1
if f == -1:
t[j] += 1
f = j
result = (result * k) % 1000000007
print(result)
Je n'ai pas pu percer. Mais c'est très facile en tant que problème F. J'ai été déçu de l'avoir manqué même si je semblais être capable de le terminer pour la première fois.
from sys import exit
T1, T2 = map(int, input().split())
A1, A2 = map(int, input().split())
B1, B2 = map(int, input().split())
if A1 > B1:
A1, B1 = B1, A1
A2, B2 = B2, A2
if A2 < B2:
print(0)
exit()
if A1 * T1 + A2 * T2 < B1 * T1 + B2 * T2:
print(0)
exit()
if A1 * T1 + A2 * T2 == B1 * T1 + B2 * T2:
print('infinity')
exit()
a = B1 * T1 - A1 * T1
b = (A1 * T1 + A2 * T2) - (B1 * T1 + B2 * T2)
t = a // b
if a % b == 0:
print(t * 2)
else:
print(t * 2 + 1)