728x90

Euclidean algorithm 1

[Algorithm] ์žฌ๊ท€ ์•Œ๊ณ ๋ฆฌ์ฆ˜_1

05-1 ์žฌ๊ท€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ธฐ๋ณธ ์žฌ๊ท€ ์•Œ์•„๋ณด๊ธฐ ์žฌ๊ท€(recursion): ์–ด๋– ํ•œ ์ด๋ฒคํŠธ์—์„œ ์ž๊ธฐ ์ž์‹ ์„ ํฌํ•จํ•˜๊ณ  ๋‹ค์‹œ ์ž๊ธฐ ์ž์‹ ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •์˜๋˜๋Š” ๊ฒฝ์šฐ ์žฌ๊ท€์˜ ์˜ˆ: ์ž์—ฐ์ˆ˜์˜ ์ •์˜ 1์€ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ์ž์—ฐ์ˆ˜์˜ ๋ฐ”๋กœ ๋‹ค์Œ ์ˆ˜๋„ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค. ํŒฉํ† ๋ฆฌ์–ผ ์•Œ์•„๋ณด๊ธฐ ํŒฉํ† ๋ฆฌ์–ผ(factorial): ์–‘์˜ ์ •์ˆ˜๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๊ณฑํ•œ๋‹ค๋Š” ์˜๋ฏธ๋กœ ์ˆœ์ฐจ ๊ณฑ์…ˆ์ด๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์žฌ๊ท€๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€ํ‘œ์ ์ธ ์˜ˆ์ž…๋‹ˆ๋‹ค. ์–‘์˜ ์ •์ˆ˜ n์˜ ํŒจํ† ๋ฆฌ์–ผ(n!)์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒฉํ† ๋ฆฌ์–ผ n!์˜ ์ •์˜(n์€ ์–‘์˜ ์ •์ˆ˜) 0! = 1 n > 0์ด๋ฉด n! = n x (n - 1)! ์‹ค์Šต 5-1 ์–‘์˜ ์ •์ˆ˜ n์˜ ํŒฉํ† ๋ฆฌ์–ผ ๊ตฌํ•˜๊ธฐ # ์–‘์˜ ์ •์ˆ˜ n์˜ ํŒฉํ† ๋ฆฌ์–ผ ๊ตฌํ•˜๊ธฐ def factorial(n: int) -> int: """์–‘์˜ ์ •์ˆ˜ ..

Code/Algorithm 2022.12.06
728x90