Je voudrais écrire un commentaire sur les problèmes A, B et C d'ABC de Reiwa, en espérant que ce sera une formation pour approfondir sa compréhension et un peu d'aide pour quelqu'un.
https://atcoder.jp/contests/abc126/tasks/abc126_a
Peut-il être connecté avec une utilisation moindre?
n,k = map(int,input().split())
s = input()
print(s[:k-1]+s[k-1].lower()+s[k:])
Sortie jusqu'au caractère avant k avec s [: k-1] Sortie avec s [k-1] .lower () en caractère k inférieur Sortie k et version ultérieure avec s [k:]
https://atcoder.jp/contests/abc126/tasks/abc126_b
Le jugement est fait en regardant les nombres à deux chiffres dans la seconde moitié des deux premiers chiffres. Par conséquent, dans un premier temps, il reçoit les données sous forme de type str. Convertissez les 1er, 2ème, 3ème et 4ème caractères ensemble en type int.
s = input()
a = int(s[:2])
b = int(s[2:])
if 1 <= a and a <= 12 and 1<= b and b <=12:
print("AMBIGUOUS")
elif 1 <= a <=12 and (12 < b or b < 1):
print("MMYY")
elif (12 < a or a < 1) and 1 <= b <= 12:
print("YYMM")
else:
print("NA")
https://atcoder.jp/contests/abc126/tasks/abc126_c
Je pense que vous devriez honnêtement implémenter la méthode de sortie dans l'exemple de sortie 1. J'ai réussi à le mettre en œuvre en examinant les résultats de soumission d'autres personnes. .. ..
n,k = map(int,input().split())
ans = 0
for i in range(1,n+1):
j = 0
if i < k:
while i*(2**j) < k:
j += 1
ans += (1/n)*1/(2**j)
else:
ans += (1/n)
print(ans)
Recommended Posts