✔[문제 설명]
- N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야하는 최소 횟수를 구하는 프로그램 작성
- N에서 1을 뺀다.
- N을 K로 나눈다. (N이 K로 나누어 지는 경우만)
[입력 조건]
- 첫째줄에 N(2 <= N <= 100,000)과 K(2 <= K <= 100,000)가 공백으로 구분되며 각각 자연수로 주어진다. 이떄 입력으로 주어지는 N은 항상 K보다 크거나 같다.
ex)
25 2 -> 2출력
[내 코드]
n,k = map(int,input().split())
count = 0
while True:
if n % k==0:
n = n/k
count += 1
if n%k!=0:
n-=1
count += 1
if n ==1:
break
print(count)
[답안 예시]
n,k = map(int,input().split())
count = 0
while n>=k:
while n % k!=0:
n-=1
count += 1
n=n//k
count +=1
while n>1:
n-=1
count +=1
print(count)
📌
@이것이 코딩 테스트다 with 파이썬