์์
[์นด์นด์ค] k์ง์์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ (java)
๋ฌธ์ ๋งํฌ https://programmers.co.kr/learn/courses/30/lessons/92335# ์ฝ๋ฉํ ์คํธ ์ฐ์ต - k์ง์์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ ๋ฌธ์ ์ค๋ช ์์ ์ ์ n์ด ์ฃผ์ด์ง๋๋ค. ์ด ์ซ์๋ฅผ k์ง์๋ก ๋ฐ๊ฟจ์ ๋, ๋ณํ๋ ์ ์์ ์๋ ์กฐ๊ฑด์ ๋ง๋ ์์(Prime number)๊ฐ ๋ช ๊ฐ์ธ์ง ์์๋ณด๋ ค ํฉ๋๋ค. 0P0์ฒ๋ผ ์์ ์์ชฝ์ 0์ด ์๋ ๊ฒฝ์ฐ P0์ฒ๋ผ ์ programmers.co.kr ๋ฌธ์ ํ์ด ๐จ๐ป๐ป ํต์ฌ ์คํฌ ๐จ๐ป๐ป ์์, ์ฌ๊ท n์ผ๋ก ์ฃผ์ด์ง ์ซ์๋ฅผ k์ง์๋ก ๋ณ๊ฒฝํ ํ 0์ ์ค๋ฅธ์ชฝ ๋๋ ์ผ์ชฝ์ผ๋ก ๊ฐ์ง๊ณ ์๋ ์๋ค์ด ์์์ธ์ง ํ๋จํ์ฌ ๊ฐ์๋ฅผ ๊ตฌํด์ฃผ๋ ๋ฌธ์ ์ด๋ค. 10์ง์์ธ n์ k์ง์๋ก ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ์ฌ๊ท์ ๋๋๊ธฐ ๊ทธ๋ฆฌ๊ณ %์ฐ์ฐ์ ํ์ฉํ์ฌ ๋ง๋ค ์ ์๋ค. %์ฐ์ฐ์ ํ์ฌ ๊ตฌํ m..
์ต๋, ์ต์๊ณต๋ฐฐ์ ๊ทธ๋ฆฌ๊ณ ์์
์ต๋๊ณต์ฝ์(GCD) ๋ ์ a,b์ ๊ณตํต๋ ์ฝ์์ค ๊ฐ์ฅ ํฐ ์ - ๊ตฌํ๋ ๋ฐฉ๋ฒ 1. 2๋ถํฐ ์์ํด์ a,b๋ก ๊ณตํต๋๊ฒ ๋๋์ด ๋จ์ด์ง๋ ๊ฒ์ค ์ต๋๊ฐ์ ๊ตฌํ๋ค. O(n) -> n์ a,b์ค ์ต์๊ฐ 2. ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ์ ์ฌ์ฉํ๊ธฐ // ๋๋ ์ฃผ๋ก ์ฌ๊ท๋ฅผ ์ฌ์ฉํ๋ ํธ public int gcd(int a, int b){ if(a%b == 0) return b; return gcd(a,a%b); } //๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ์ฌ ๊ตฌํ ์๋ ์์ public int gcd(int a, int b){ int temp; while(true){ if(a%b == 0) return b; temp = a % b; a = b; b = temp; } } ์ ์ฝ๋๋ ์ ํด๋ฆฌ๋ ํธ์ฌ๋ฒ์ ์ฌ์ฉํด์ ๊ตฌํํด๋ณธ ์ฝ๋์ด๋ค. ์ต์๊ณต๋ฐฐ์(LCM) - ์ต์..