[PYTHON] AtCoderBeginnerContest171 Review & Summary (premier semestre)

AtCoder ABC171 Ceci est un résumé des problèmes de AtCoder Beginner Contest 171 qui s'est tenu le 2020-06-21 (dimanche) dans l'ordre du problème A, en tenant compte de la considération. La première moitié traite des problèmes jusqu'à ABC. 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

Problème A αlphabet

Énoncé du problème L'alphabet supérieur ou inférieur $ 1 $ caractère $ α $ est entré. Affiche "A" si $ α $ est en anglais supérieur, et "a" s'il est en anglais inférieur.

Il existe de nombreuses façons de juger s'il est supérieur ou inférieur, mais cette fois j'ai utilisé `` str.istitle () ''.

abc171a.py


n = input()
if n.istitle():
    print("A")
else:
    print("a")

Problème B Mélanger le jus

Énoncé du problème Un magasin vend des variétés de fruits $ N $, des fruits 1 $,…, N $, chacun au prix de $ p_1,…, p_N $ yen. Lors de l'achat de variétés de fruits $ K $ une par une dans ce magasin, demandez le prix total minimum possible.

Vous pouvez acheter un type de fruit $ k $ au moins cher, vous pouvez donc facilement le résoudre en triant le prix.

abc171b.py


n, k = map(int, input().split())
p_list = list(map(int, input().split()))
p_list = sorted(p_list)
print(sum(p_list[:k]))

Problème C Un Quadrillion et Un Dalmatiens

Énoncé du problème Roger a décidé de garder tous les chiens à 1000000000000001 $ qui lui sont soudainement apparus. Les chiens étaient numérotés à l'origine de 1 $ à 1000000000000001 $, mais Roger leur a donné des noms selon les règles suivantes: ・ Les chiens numérotés $ 1,2, ⋯, 26 $ sont nommés a, b, ..., z dans cet ordre. ・ Les chiens numérotés 27,28,29 $, ⋯, 701,702 $ sont nommés aa, ab, ac, ..., zy, zz dans cet ordre. ・ Les chiens numérotés 703 704 705 $, ⋯, 18277,18278 $ sont nommés aaa, aab, aac, ..., zzy, zzz dans cet ordre. ・ Les chiens numérotés 18279,18280,18281 $, ⋯, 475253,475254 $ sont nommés aaaa, aaab, aaac, ..., zzzy, zzzz dans cet ordre. ・ $ 475255,475256, ⋯ Les chiens numérotés $ sont nommés aaaaa, aaaab, ... dans cet ordre. ・ (Omis ci-dessous) En d'autres termes, si vous triez les noms donnés par Roger par ordre numérique: a, b, ..., z, aa, ab, ..., az, ba, bb, ..., bz, ..., za, zb, ..., zz, aaa, aab,. .., aaz, aba, abb, ..., abz, ..., zzz, aaaa, ... Roger vous a causé un problème. "Répondez au nom du chien avec le numéro $ N $."

Je pensais que cela pouvait être résolu avec une idée 26-aire, alors je l'ai implémentée et elle est passée.

abc171c.py


n = int(input())
n = n - 1
mozi_list = []
while True:
    k = n % 26
    n = n // 26 - 1
    chr_s = chr(97 + k)
    mozi_list.append(chr_s)
    if n == -1:
        break
for i in range(len(mozi_list)):
    print(mozi_list[len(mozi_list)-i-1], end="")

C'est la fin du premier semestre. Cette fois, l'explication a été rédigée très soigneusement, j'espère donc que vous pourrez vous y référer pour la solution détaillée. Merci d'avoir lu jusqu'à la fin du premier semestre.

La seconde moitié expliquera le problème DEF. Suite dans la seconde moitié.

Recommended Posts

AtCoderBeginnerContest175 Review & Summary (premier semestre)
AtCoderBeginnerContest169 Review & Summary (premier semestre)
AtCoderBeginnerContest174 Review & Summary (premier semestre)
AtCoderBeginnerContest173 Review & Summary (First Half)
AtCoderBeginnerContest165 Review & Summary (premier semestre)
AtCoderBeginnerContest170 Review & Summary (premier semestre)
AtCoderBeginnerContest167 Review & Summary (premier semestre)
AtCoderBeginnerContest177 Review & Résumé (premier semestre)
AtCoderBeginnerContest168 Review & Summary (premier semestre)
AtCoderBeginnerContest178 Review & Summary (premier semestre)
AtCoderBeginnerContest171 Review & Summary (premier semestre)
AtCoderBeginnerContest166 Review & Summary (premier semestre)
AtCoderBeginnerContest161 Review & Summary (premier semestre)
AtCoderBeginnerContest172 Review & Summary (premier semestre)
AtCoderBeginnerContest176 Review & Summary (premier semestre)
AtCoderBeginnerContest178 Review & Summary (second semestre)
AtCoderBeginnerContest161 Review & Summary (second semestre)
AtCoderBeginnerContest164 Review & Summary (second semestre)
AtCoderBeginnerContest176 Review & Summary (second semestre)
AtCoderBeginnerContest168 Review & Summary (second semestre)
AtCoderBeginnerContest166 Review & Summary (second semestre)
AtCoderBeginnerContest171 Review & Summary (second semestre)
AtCoderBeginnerContest174 Review & Summary (second semestre)
AtCoderBeginnerContest173 Review & Summary (second semestre)
AtCoderBeginnerContest177 Review & Summary (second semestre)
AtCoderBeginnerContest180 Examen et résumé
AtCoderBeginnerContest181 Examen et résumé
AtCoderBeginnerContest182 Examen et résumé
AtCoderBeginnerContest183 Review & Résumé
AtCoderBeginnerContest179 Review & Résumé
AtCoder Revue des questions précédentes (première moitié de 12 / 8,9)