AtCoder ABC180 Ceci est un résumé des problèmes du concours AtCoder Beginner Contest 180 qui a eu lieu le 17/10/2020 (samedi), en commençant par le problème A et en tenant compte des considérations. Le problème est cité, mais veuillez consulter la page du concours pour plus de détails. Cliquez ici pour la page du concours Commentaire officiel PDF
Énoncé du problème J'ai sorti des boules $ A $ de la boîte contenant des boules $ N $ et j'ai mis de nouvelles boules $ B $. Combien de balles y a-t-il maintenant dans la boîte?
abc180a.py
n, a, b = map(int, input().split())
print(n - a + b)
Énoncé du problème $ N $ Un point $ (x_1,…, x_N) $ dans l'espace dimensionnel est donné. Trouvez la distance de Manhattan, la distance euclidienne et la distance de Chebyshev de l'origine à ce point. Cependant, chaque distance est calculée comme suit: ・ Distance de Manhattan:
|x_1|+…+|x_N| · Distance euclidienne:\sqrt{|x_1|^2+…+|x_N|^2} Distance de Chebyshev:max(|x_1|,…,|x_N|)
abc180b.py
n = int(input())
x_list = list(map(int, input().split()))
a = 0
b = 0
c = 0
for x in x_list:
if x < 0:
x *= -1
a += x
b += x * x
if c < x:
c = x
print(a)
print(b**(0.5))
print(c)
Énoncé du problème Il y a des choux à la crème $ N $. Trouvez tous les nombres possibles de personnes qui peuvent diviser les choux à la crème également sans les diviser.
abc180c.py
def make_divisors(n):
divisors = []
for i in range(1, int(n**0.5)+1):
if n % i == 0:
divisors.append(i)
if i != n // i:
divisors.append(n//i)
divisors.sort()
return divisors
n = int(input())
for x in make_divisors(n):
print(x)
Énoncé du problème Iroha est accro au jeu d'élevage d'animaux de compagnie. Iroha a Takahashi comme animal de compagnie. Au début, la force de Takahashi est de X $ et son expérience de 0 $. Ces valeurs seront augmentées de la formation spéciale de type $ 2 $ suivante. ・ Allez au Cacommon Gym: la force est doublée de $ A $ et la valeur d'expérience est augmentée de 1 $. ・ Allez au AtCoder Gym: la force augmente de $ B $ et la valeur d'expérience augmente de 1 $. Takahashi évolue lorsque la force est supérieure à $ Y $, mais Iroha pense que c'est mignon s'il n'évolue pas. Par conséquent, lorsque vous imposez un entraînement spécial à M. Takahashi afin que la force ne dépasse pas $ Y $, veuillez trouver la valeur maximale de la valeur d'expérience.
Pendant le concours, j'ai utilisé des journaux pour calculer combien de fois je pouvais aller au Cacommon Gym afin de ne pas utiliser de traitement répétitif.
(`` n = int (math.log (b / a / x, a)) + 1 ''
sentiment)
En regardant l'explication, j'ai lu que le nombre de fois où je peux aller au Cacommon Gym est limité à moins de 64 $, et j'ai pensé que c'était vrai.
Le code provient du commentaire.
abc180d.py
x,y,a,b=map(int,input().split())
ans=0
while a*x<=x+b and a*x<y:
x*=a
ans+=1
print(ans+(y-1-x)//b)
Récemment, même si je peux résoudre le problème D, j'ai passé trop de temps sur un problème jusqu'à ce point, et je n'ai pas été en mesure de résoudre le problème E, alors j'aimerais pouvoir résoudre le problème un peu plus de manière flexible.
Merci d'avoir lu jusqu'au bout.
Recommended Posts