์ ์ฒด ๊ธ
[์นด์นด์ค] 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..
[์นด์นด์ค] ์ฃผ์ฐจ ์๊ธ ๊ณ์ฐ (java)
๋ฌธ์ ๋งํฌ https://programmers.co.kr/learn/courses/30/lessons/92341 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ฃผ์ฐจ ์๊ธ ๊ณ์ฐ [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr ๋ฌธ์ ํ์ด ๐จ๐ป๐ป ํต์ฌ ์คํฌ ๐จ๐ป๐ป ๊ตฌํ, Map ์ฃผ์ฐจ์๊ธ๊ณ์ฐ ๋ฌธ์ ๋ ์ ๋ ฅ์ผ๋ก ๋ค์ด์ค๋ ์ฃผ์ฐจ์ ๋ํ record์ ๋ณด๋ก ํ๋ฃจ๋์ ์ฐจ๋์ ์ถ์ ์ฌ๋ถ๋ก ์๊ฐ์ ๊ณ์ฐํ์ฌ ๊ทธ ๋ ๋์ ..
JPA ์์๊ด๊ณ ๋งคํํ๊ธฐ(+ @MappedSuperclass)
๋์ ์ง๋ ์๊ฐ์ JPA๋ฅผ ํ์ฉํด ๊ฐ์ฒด์ ์ฐ๊ด๊ด๊ณ ๋งคํ์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์๋ค. ์ด๋ฒ ์๊ฐ์๋ JPA๋ฅผ ํ์ฉํ์ฌ ๊ฐ์ฒด์ ์์๊ด๊ณ๋ฅผ ํ ์ด๋ธ๋ก ํํํ๋ ๋ฐฉ๋ฒ์ ๋ํ์ฌ ์์๋ณด๊ณ , ์์๊ด๊ณ์๋ ๋ค๋ฅด์ง๋ง ๋น์ทํด์ ํผ๋ํ๊ธฐ ์ฌ์ด ๊ฐ๋ ์ธ @MappedSuperclass๋ฅผ ์์๋ณด๋๋ก ํ๊ฒ ๋ค. ์์๊ด๊ณ ๋งคํ ๊ฐ์ฒด์งํฅ์ธ์ด์์๋ ์ค๋ณต๋๋ ์ ๋ณด๋ฅผ ์์๊ด๊ณ๋ฅผ ์ฌ์ฉํด ๋ฌถ์ด์ค ์์๋ค. ์๋ฅผ๋ค์ด ์ฌ๋๊ณผ ๊ฐ์์ง ๊ณ ์์ด๋ ๋ชจ๋ ์ด๋ฆ๊ณผ ๋์ด ๊ทธ๋ฆฌ๊ณ ๊ตฌ๋ถ์ง์ด์ค ID๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ์ด๋ฌํ ํน์ง์ '๋๋ฌผ'๋ก ๋ฌถ์ด์ ์์ํด์ค ์ ์๋ค. ๊ฐ์ฒด์์๋ ์ด๋ ๊ฒ ์์์ ํ์ฉํด์ฃผ์ง๋ง, ํ ์ด๋ธ์์๋ ์ด๋ ๊ฒ ์์์ ํ ์ ์๋ค. ๋ฐ๋ผ์ ์์์ ์ํด์๋ ์ ๋ต์ ์ฌ์ฉํด์ผํ๋ค. ์์์ ์ ๋ต์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ @Inheritance annotation์ ์ด์ฉํ..
[์นด์นด์ค] ๋จ์ฒด์ฌ์ง์ฐ๊ธฐ (java)
๋ฌธ์ ๋งํฌ https://programmers.co.kr/learn/courses/30/lessons/1835 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋จ์ฒด์ฌ์ง ์ฐ๊ธฐ ๋จ์ฒด์ฌ์ง ์ฐ๊ธฐ ๊ฐ์์ ๋ง์ ์นด์นด์คํ๋ ์ฆ๋ ๋จ์ฒด๋ก ์ํ์ ๋ ๋ฌ๋ค. ์ฆ๊ฑฐ์ด ์๊ฐ์ ๋ณด๋ด๊ณ ๋ง์ง๋ง์ ๋จ์ฒด์ฌ์ง์ ์ฐ๊ธฐ ์ํด ์นด๋ฉ๋ผ ์์ ์ผ๋ ฌ๋ก ๋๋ํ ์ฐ๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ์๊ฐ ์ํ๋ ๋ฐฐ์น๊ฐ ๋ชจ๋ programmers.co.kr ๋ฌธ์ ํ์ด ๐จ๐ป๐ป ํต์ฌ ์คํฌ ๐จ๐ป๐ป ๋ธ๋ฃจํธํฌ์ค ์์ด ์นด์นด์ค ํ๋ ์ฆ ์บ๋ฆญํฐ 8๋ช ์ด ์ํ๋ ์์๋๋ก ์ฌ์ง์ ์ฐ์ ์ ์๋ ํ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ์บ๋ฆญํฐ๊ฐ ์์๋๋ก ์๋ ๊ฒฝ์ฐ์์๋ 8!์ด๋ฉฐ ์ต๋๋ก ๋ค์ด์ฌ ์ ์๋ ์กฐ๊ฑด์ด 100๊ฐ์ด๋ค. ๋ฐ๋ผ์ ์ต์ ์ ๊ฒฝ์ฐ $O(8!*100)$์ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. ๋ฐ๋ผ์, ๋ธ๋ฃจํธํฌ์ค๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค. ์์ด๋ก ๋ฌธ..