728x90
โญ ๋ฌธ์ ์ค๋ช
iํฉํ ๋ฆฌ์ผ (i!)์ 1๋ถํฐ i๊น์ง ์ ์์ ๊ณฑ์ ์๋ฏธํฉ๋๋ค. ์๋ฅผ๋ค์ด 5! = 5 * 4 * 3 * 2 * 1 = 120 ์
๋๋ค. ์ ์ n์ด ์ฃผ์ด์ง ๋ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ฐ์ฅ ํฐ ์ ์ i๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
- i! ≤ n
๐ ์ ํ์ฌํญ
0 < n ≤ 3,628,800
๐ฑ ์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
10! = 3,628,800์
๋๋ค. n์ด 3628800์ด๋ฏ๋ก ์ต๋ ํฉํ ๋ฆฌ์ผ์ธ 10์ return ํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #2
3! = 6, 4! = 24์
๋๋ค. n์ด 7์ด๋ฏ๋ก, 7 ์ดํ์ ์ต๋ ํฉํ ๋ฆฌ์ผ์ธ 3์ return ํฉ๋๋ค.
โจ ๋ด ํ์ด
def solution(n):
fac = 1
for i in range(1, 11) :
fac = fac * i
if fac > n :
return i-1
elif fac == n :
return i
ํ์ด ์ธ์ด : Python3
๐ ๋ฌธ์ ํ์ด
ํ์ด
1. 10!์ด n์ ์ต๋๊ฐ๊ณผ ๋์ผํ๊ธฐ ๋๋ฌธ์, ๋ฐ๋ณต๋ฌธ์ 1๋ถํฐ 10๊น์ง๋ง ํ์
2. ํ์ ์ค์ธ ์ซ์๋ฅผ ์ฐจ๋ก๋๋ก ๊ณฑํด ๋๊ฐ๋ฉด์ ํฉํ ๋ฆฌ์ผ ๊ฐ์ ๊ณ์ฐ
3. ๋ง์ฝ ๊ณ์ฐํ ํฉํ ๋ฆฌ์ผ ๊ฐ์ด n๋ณด๋ค ํฌ๋ค๋ฉด, ํ์ฌ ํ์ ์ค์ธ ๊ฐ -1์ ๋ฐํ
4. ๋ง์ฝ ๊ณ์ฐํ ํฉํ ๋ฆฌ์ผ ๊ฐ๊ณผ n์ด ๋์ผํ๋ค๋ฉด, ํ์ฌ ํ์์ค์ธ ๊ฐ์ ๋ฐํ
728x90