[alphaorderly] WEEK 03 Solutions#2706
Conversation
๐ alphaorderly ๋์ ํ์ต ํํฉ์ด๋ฒ ์ฃผ ์ ์ถ ๋ฌธ์
๋์ ํ์ต ์์ฝ
๋ฌธ์ ํ์ด ํํฉ
๐ค ์ด ๋๊ธ์ GitHub App์ ํตํด ์๋์ผ๋ก ์์ฑ๋์์ต๋๋ค. ๐ข API ์ฌ์ฉ๋ (gpt-5-nano)
|
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Backtracking, Dynamic Programming
- ์ค๋ช : ์ฃผ์์ผ๋ก ๋ณด๋ฏ ์ต์ด ๊ตฌํ์ ๋ฐฑํธ๋ํน์ผ๋ก ๋ชจ๋ ์กฐํฉ์ ํ์ํ๋ ๋ฐฉ์์ด๋ฉฐ, ๋ ๋ฒ์งธ ๊ตฌํ์ ๊ฐ ํฉ์ ๋ํ ๋ถ๋ถํด๋ฅผ ์ ์ฅํ๋ ๋์ ๊ณํ(DP) ์ ๊ทผ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ๋ ๊ฐ์ง ํจํด์ด ํผํฉ๋์ด ์ฝ๋์ ๋ฐ์๋์ด ์์ต๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
โน๏ธ ์ด ํ์ผ์๋ 2๊ฐ์ง ํ์ด๊ฐ ํฌํจ๋์ด ์์ด ๊ฐ๊ฐ ๋ถ์ํฉ๋๋ค.
ํ์ด 1: Solution.combinationSum โ Time: O(n * target) / Space: O(target)
| ๋ณต์ก๋ | |
|---|---|
| Time | O(n * target) |
| Space | O(target) |
ํผ๋๋ฐฑ: ๋ชฉ์ ํฉ์ด target์ ๋๋ฌํ๋๋ก ๊ฐ ํฉ์ ๋ํ ๋ถ๋ถ ํด๊ฒฐ์ฑ ๋ค์ ์ ์ฅํ๊ณ , ์ด๋ฅผ ์ด์ฉํด ์ต์ข ๊ฒฐ๊ณผ๋ฅผ ๊ตฌ์ฑํ๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ํจ๊ณผ์ ์ ๋๋ค.
ํ์ด 2: Solution.combinationSum โ Time: O(N^target) / Space: O(target)
| ๋ณต์ก๋ | |
|---|---|
| Time | O(N^target) |
| Space | O(target) |
ํผ๋๋ฐฑ: ๊น์ ํ์์ผ๋ก ๋ชจ๋ ์กฐํฉ์ ์๋ํ๋ฏ๋ก ์ง์์ ์๊ฐ ๋ณต์ก๋๊ฐ ๋ฐ์ํ ์ ์๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Dynamic Programming, Two Pointers, Hash Map / Hash Set
- ์ค๋ช : ๋ฌธ์์ด์ ๊ฐ ์์น๊น์ง์ ํด๋ฅผ ๋์ ์ ์ผ๋ก ๊ณ์ฐํ๋ DP ํจํด์ผ๋ก, ๋ ๋ฌธ์ ์กฐํฉ๊ณผ ํ ๋ฌธ์ ํด๋ ์ฌ๋ถ๋ฅผ ์ํ๋ก ํ์ฉํ์ฌ ์์ฐจ์ ์ผ๋ก ํด๊ฒฐํ๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ๋ณต์ก๋ | |
|---|---|
| Time | O(n) |
| Space | O(1) |
ํผ๋๋ฐฑ: ๋ ๊ฐ์ง ๊ฒฝ์ฐ๋ฅผ ๋ถ๋ฆฌํด ๋์ ๊ฐ๋ฅํ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ฐฑ์ ํ๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Dynamic Programming, Greedy
- ์ค๋ช : ๋ ๋ฒ์งธ ๊ตฌํ์ Kadane ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฐ์ ๋ถ๋ถ๋ฐฐ์ด์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํจํด์ด๋ค. ์ด์ ํฉ๊ณผ ํ์ฌ ๊ฐ์ ๋น๊ตํด ๋์ ํ๋ฉฐ ์ต๋๊ฐ์ ๊ฐฑ์ ํ๋ฏ๋ก DP์ ์ต์ ๋ถ๋ถ๊ตฌ์กฐ์ ๊ทธ๋ฆฌ๋ ์ฑ๊ฒฉ์ด ํผํฉ๋ ํํ๋ก ๋ถ๋ฅ๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ๋ณต์ก๋ | |
|---|---|
| Time | O(n) |
| Space | O(1) |
ํผ๋๋ฐฑ: ํ์ฌ ๊ตฌํ์ ์ ํ ์๊ฐ์ ์ต๋๊ฐ์ ์ ์งํ๋ ํ์ค ๋ฐฉ๋ฒ์ด๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Bit Manipulation
- ์ค๋ช : ์ฃผ์ด์ง ์ฝ๋๋ ์ด์ง์์ ๊ฐ ์๋ฆฟ์๋ฅผ ๋นํธ ์ฐ์ฐ์ผ๋ก ํ์ธํด 1์ ๊ฐ์๋ฅผ ์ธ๋ ๋ฐฉ๋ฒ์ผ๋ก, ๋นํธ ์กฐ์์ ์ด์ฉํ ํจํด์ด๋ค. while ๋ฃจํ๋ก n์ ๋ชจ๋ ๋นํธ๋ฅผ ์ํํ๋ฉฐ 1์ ๊ฐ์๋ฅผ ๋์ ํ๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ๋ณต์ก๋ | |
|---|---|
| Time | O(number_of_bits) |
| Space | O(1) |
ํผ๋๋ฐฑ: ๋จ์ ๋นํธ ์ํ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Greedy, Two Pointers, Hash Map / Hash Set
- ์ค๋ช : ๋ฌธ์์ด ์ ์ฒ๋ฆฌ ํ ์ ๋์์ ๋น๊ตํ๋ ๋ฐฉ์์ผ๋ก ๋์นญ ์ฌ๋ถ๋ฅผ ํ๋จํ๋ ํจํด์ Two Pointers์ ๊ธฐ๋ณธ ์์ด๋์ด์ ํด๋นํ๋ฉฐ, ๋ถํ์ํ ๋ฌธ์ ์ ๊ฑฐ๋ก ๋จ์ผ ๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ณผ์ ์์ ๋ฌธ์์ด ๋น๊ต๋ฅผ ์ํํ๋ ์ ์ด Greedy์ ์ผ๋ฐ์ ์ ๊ทผ๊ณผ๋ ๋ง๋ฟ์ต๋๋ค. ๋ํ ์ํ๋ฒณ๊ณผ ์ซ์ ํ์ธ์ ๋ํ ์กฐ๊ฑด ๊ฒ์ฌ๋ก Hash Map/Hash Set์ ์ง์ ํ์ฉ์ ์์ง๋ง ๋ฌธ์ ํํฐ๋ง ๋จ๊ณ์์ ์งํฉ์ ํ๋จ์ด ํฌํจ๋ฉ๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ๋ณต์ก๋ | |
|---|---|
| Time | O(n) |
| Space | O(n) |
ํผ๋๋ฐฑ: ์ ์ฒ๋ฆฌ์ ๋์นญ ๋น๊ต๋ฅผ ํตํด ํ๋ฌธ ์ฌ๋ถ๋ฅผ ํ๋จํ๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
|
๋ผ์ธ๋ฆฐํธ ์์ ํด๋ ๋ณ๊ฒฝ์ด ์๋์ด์ PR ์๋กํ๊ฒ ์ต๋๋ค. |
๋ต์ ์ ์ถ ๋ฌธ์
์์ฑ์ ์ฒดํฌ ๋ฆฌ์คํธ
In Review๋ก ์ค์ ํด์ฃผ์ธ์.๊ฒํ ์ ์ฒดํฌ ๋ฆฌ์คํธ
Important
๋ณธ์ธ ๋ต์ ์ ์ถ ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ๋ถ PR ํ๋ ์ด์์ ๋ฐ๋์ ๊ฒํ ๋ฅผ ํด์ฃผ์ ์ผ ํฉ๋๋ค!