ABC192 - Atcoder/Python精進のための解説メモ

カレンダーアイコン
2021/06/14

ABC192 - A.Star

AtCoder公式 | ABC192 - A.Star

解答

x = int(input())
cnt = 100
while x >= cnt:
    cnt += 100
print(cnt - x)

要点解説メモ

  • whileで次の目標の値を出す

ABC192 - B.uNrEaDaBlE sTrInG

AtCoder公式 | ABC192 - B.uNrEaDaBlE sTrInG

解答

s = input()
s_odd = s[::2]
s_even = 'S' + s[1::2]
if s_odd.islower() and s_even.isupper():
    print('Yes')
else:
    print('No')

要点解説メモ

  • 1文字のみで空だった場合にWAするのでevenに'S'足しておく

ABC192 - C.Kaprekar Number

AtCoder公式 | ABC192 - C.Kaprekar Number

解答

n, k = map(int, input().split())

def f(a: int):
    max_a = int(''.join(sorted(str(a), reverse=True)))
    min_a = int(''.join(sorted(str(a))))
    return max_a - min_a

for _ in range(k):
    n = f(n)
print(n)

要点解説メモ

  • 型変換するだけで、計算量間に合う
  • 実験すると、ループに入る or 0にに帰結するっぽいので再帰関数で処理しようとしたけど、再起の上限数でエラーになる

ABC192 - D.

AtCoder公式 | ABC192 - D.

解答

まだ解いていません

要点解説メモ