ABC解説 Edit

【pythonでABC200を解説】B - 200th ABC-200

問題概要

問題ページ

B - 200th ABC-200
B - 200th ABC-200

問題ページへ移動する

問題文

整数 \(N\) が与えられます。
以下の操作を \(K\) 回行った後の整数 \(N\) を出力してください。

  • 整数 \(N\) が \(200\) の倍数であれば、\(N\) を \(200\) で割る。
  • そうでなければ、整数 \(N\) を、\(N\) の後ろに文字列として \(200\) を付け加えた整数に置き換える。
    • 例えば、\(7\) を置き換えると \(7200\) に、\(1234\) を置き換えると \(1234200\) になります。

制約

  • 入力は全て整数
  • \(1 \le N \le 10^5\)
  • \(1 \le K \le 20\)

問題の考察

ACコード

import sys


def solve():
    input = sys.stdin.readline
    mod = 10 ** 9 + 7
    n, k = list(map(int, input().rstrip('\n').split()))
    for i in range(k):
        if n % 200 == 0:
            n = n // 200
        else:
            n = int(str(n) + "200")
    print(n)


if __name__ == '__main__':
    solve()

-ABC解説, Edit
-