๐Ÿ“ Coding Test Study/Math

[Math&Algorithm] ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜? ์ตœ๋Œ€๊ณต๋ฐฐ์ˆ˜?

ibelieveinme 2021. 3. 1. 02:34
728x90

โ–ท์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋ž€?

: GCD(Greatest Common Divisor)

: ๋‘ ์ˆ˜ A์™€ B์˜ ๊ณตํ†ต๋œ ์•ฝ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ ์ •์ˆ˜

 

โ–ท๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•?

โ‘  2๋ถ€ํ„ฐ min(A, B)๊นŒ์ง€ ๋ชจ๋“  ์ •์ˆ˜๋กœ ๋‚˜๋ˆ ์„œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ด ๋˜๋Š” ์ตœ๋Œ€ ์ •์ˆ˜ ์ฐพ๊ธฐ.

โ‘ก ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•(Euclidean algorithm)์œผ๋กœ ์ฐพ๊ธฐ.

    : a๋ฅผ b๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ r ์ด๋ผ๊ณ  ํ–ˆ์„ ๋•Œ, GCD(a, b) = GCD(b, r) ์ด ์„ฑ๋ฆฝํ•œ๋‹ค. → ์žฌ๊ท€๋กœ ๊ตฌํ˜„ ๊ฐ€๋Šฅ

    : r์ด 0์ด๋ฉด ๊ทธ ๋•Œ์˜ b๊ฐ€ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜ ์ด๋‹ค.

    ex) GCD(16, 12) = GCD(12, 4) = GCD(4, 0) = 4 GCD(a, b) = GCD(b, a%b) ๋กœ ํ‘œํ˜„ ๋จ

 

โ–ท์ตœ๋Œ€๊ณต๋ฐฐ์ˆ˜๋ž€?

: LCM(Least Common Multiple)

: ๋‘ ์ˆ˜์˜ ๊ณตํ†ต๋œ ๋ฐฐ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ •์ˆ˜

 

โ–ท๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•?

: ์ตœ์†Œ๊ณต์•ฝ์ˆ˜ g๋ฅผ ์•Œ ๋•Œ, g * (a/g) * (b/g) ๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

728x90

'๐Ÿ“ Coding Test Study > Math' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Math&Algorithm][C++] ์œ ํด๋ฆฌ๋””์•ˆ ๊ฑฐ๋ฆฌ(Euclidean Distance)  (0) 2021.08.09
Big-O ํ‘œ๊ธฐ๋ฒ•  (0) 2021.04.25
[Math&Algorithm] ์†Œ์ˆ˜?  (0) 2021.03.01