Dernière fois Aujourd'hui, j'ai résolu le problème d'ABC140. C'était A ~ C en 50 minutes.
Problème 0diff
** Pensées ** Puisqu'il s'agit d'un mot de passe à 3 chiffres, vous pouvez sortir le cube du nombre qui peut être utilisé.
n = int(input())
print(n**3)
Problème 58diff
** Pensées ** Calculez simplement avec les instructions for et if. Attention à ne pas mélanger les éléments de la liste avec l'index
n = int(input())
a = list(map(int,input().split()))
b = list(map(int,input().split()))
c = list(map(int,input().split()))
ans = 0
f = 10**9
for i in range(n):
ans += b[a[i]-1]
if a[i] - f == 1:
ans += c[a[i-1]-1]
f = a[i]
print(ans)
Problème 136diff
** Pensées ** La somme des éléments de $ A $ est maximisée lorsque les éléments de $ A $ donnés par $ B $ sont maximisés. Le maximum est lorsque $ a [0] $ a la même valeur que $ b [0] $ et $ a [-1] $ a la même valeur que $ b [-1] $. L'autre $ A $ est déterminé par min (b [i-1], b [i]).
n = int(input())
a = list(map(int,input().split()))
b = list(map(int,input().split()))
c = list(map(int,input().split()))
ans = 0
f = 10**9
for i in range(n):
ans += b[a[i]-1]
if a[i] - f == 1:
ans += c[a[i-1]-1]
f = a[i]
print(ans)
D (1110diff) n'a pas pu être résolu. Il est regrettable que C ait également lutté pour le diff. à plus. bonne nuit.
Recommended Posts