728x90

1. N에서 1을 뺀다.

2. N을 k로 나눈다.

N이 1이 되는 최소 횟수

 

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

while True:
    if n == 1:
        break
    if n % k == 0:
        n //= k
    else:
        n -= 1
    result += 1
print(result)
n, k = map(int, input().split())
result = 0

while True:
    target = (n // k) * k # n == k로 나누어떨어질 때까지 1 빼기
    result += (n - target)
    n = target
    
    if n < k:
        break
    
    result += 1
    n //= k
    print(result, n, target)

result += (n - 1)
print(result)

반응형

'전.py' 카테고리의 다른 글

[python] 시각  (0) 2022.07.07
[python] 상하좌우  (0) 2022.07.07
[python] 숫자 카드 게임  (0) 2022.07.06
[python] 큰 수의 법칙  (0) 2022.07.04
[python] 백준 11726 2xn 타일링  (0) 2022.06.17
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기