변수
- N : 수 / K : 나눌 수
- count : 과정 수
로직
- N,K 입력받기
- while(true) -> N 이 1이면 탈출
- if N%K == 0 이면
N = N/K
count += 1
- N%K!=0 이면
N = N-1
count += 1
코드
- 이렇게 풀었더니,, 뭔가 효율적이지 못한 로직이라는 생각이 들었다
-> N==1인 경우의 코드가 중복되서
N,K = map(int,input().split())
count = 0
while 1:
if N%K==0:
N = N/K
count += 1
if(N == 1) :
print(count)
break
else :
N = N-1
count += 1
if(N == 1) :
print(count)
break
다시 푼 코드
- 똑같이 무한루프를 돌리고
-> N이 1인 경우와 아닌 경우 로 큰 if문을 만들어 감쌌다
'''
변수
1. N : 변수 / K : 나눌 수
2. count : 과정수
로직
1. while(true):
2. if N==1
-> break
3. else
4. if N%%K -> N=몫, count+1
5. else -> N-1 , count+1
'''
N,K = map(int,input().split())
count=0
while True:
if(N==1):
print(count)
break
else :
if(N%K==0):
N = N/K
count += 1
else :
N = N-1
count +=1
25/03/03
로직
코드
n, k = list(map(int, input().split()))
count = 0
while (True):
if n == 1:
break
if n % k == 0:
n = n // k
else:
n = n - 1
count += 1
print(count)