Home連絡先
Python
Kaprekar Number 関数定義せずに解く方法(AtCoder ABC 192C)
禿
禿
June 30, 2022
1 min

Kaprekar Number で関数を用いずに実装する方法(Python)

Python コード

N, K = map(int, input().split())

for i in range(K):
  min = int("".join(sorted(str(N))))
  max = int("".join(sorted(str(N), reverse = True)))
  N = max - min

print(N)

関数を用いた解法はこちら https://atcoder.jp/contests/abc192/editorial/688

def g1(n):
    return int(''.join(sorted(str(n))[::-1]))

def g2(n):
    return int(''.join(sorted(str(n))))

def f(n):
    return g1(n)-g2(n)

N,K = map(int,input().split())
for _ in range(K):
    N = f(N)
print(N)

注意

いわゆるワンライナーは、AtCoderや個人プロジェクトにおいては、個人的に書いていて気持ちが良いので多用してしまいがちですが、チームでの保守においては可読性が著しく低下するため、実際の現場では使用を控えた方がよいでしょう。

参考文献

sort, sortedの昇順、降順について

Pythonでリストをソートするsortとsortedの違い


Tags

PythonAtCoder

Related Posts

分類概要(Classification)
July 07, 2022
1 min
© 2022, All Rights Reserved.

Quick Links

Advertise with usAbout UsContact Us

Social Media