๋ชฉ์ฐจ
๋ฐฐ์ด์
while๋ฌธ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๋์ ๊ณ์ ์คํ๋๋ค.
# 1๋ฒ์งธ ๋ฐฉ๋ฒ
while n>1:
if n%k==0:
count +=1
n = n //k
else:
n -= 1
count +=1
# 2๋ฒ์งธ ๋ฐฉ๋ฒ
while n>=k:
while n %k != 0:
n -=1
count +=1
n //=k
count +=1
# 3๋ฒ์งธ ๋ฐฉ๋ฒ
while n>1:
n-=1
count+=1
while True:
target = (n//k) * k # k๋ก ๋๋์ด๋จ์ด์ง๋ ์๋ฅผ ๊ตฌํด์ค
result += (n-target) # 1์ ๋นผ์ผํ ํ์๋ฅผ result์ ๋ํด์ค
n = target # target์ n ๊ฐ์ ๋ฃ์ด์ค
if n<k:
break
result +=1 # n์ด k๋ณด๋ค ํฌ๋ค๋ฉด ๊ณ์ ๋๋๋ ์ฐ์ฐ์ ์ํํ ๊ฒ์ด๋ค result์ 1์ฉ ๋ํด์ค๋ค.
n //= k # k๋ก n์ ๋๋์ด์ค๋ค.
result += (n-1)
print(result)
728x90
'์๊ณ ๋ฆฌ์ฆ ๊ณต๋ถ ๊ธฐ๋ก' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ด์ฝํ ํ์ด์ฌ : ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ ์ ๋ฆฌ (0) | 2024.05.05 |
---|---|
[DFS/BFS : python] ์ด์ฝํ ๋ด์ฉ ์ ๋ฆฌ ๋ฐ ๋ฌธ์ ํ์ด ๊ธฐ๋ก (1) | 2024.04.06 |
[๊ตฌํ: python]๊ฐ๋ ๊ณผ ๋ฌธ์ ํ์ด ์ ๋ฆฌํ๊ธฐ (1) | 2024.03.28 |
[python : ๊ทธ๋ฆฌ๋]์ซ์ ์นด๋ ๊ฒ์ , min, maxํจ์ ์ ๋๋ก ์ดํดํ๊ธฐ (0) | 2024.03.18 |
์ด์ฝํ : ๊ทธ๋ฆฌ๋[ํฐ ์์ ๋ฒ์น] (0) | 2024.03.14 |