์ฝ๋ฉํ ์คํธ๋ ๊ฐ๋ฐ์ ์ฑ์ฉ์ ์ฒซ ๋ฒ์งธ ๊ด๋ฌธ์ ๋๋ค. ์๋ฅ๋ฅผ ํต๊ณผํด๋ ์ฝ๋ฉํ ์คํธ์์ ๋จ์ด์ง๋ฉด ๋ฉด์ ๊ธฐํ์กฐ์ฐจ ์์ต๋๋ค. ์ด ๊ธ์์ ์ธ์ด ์ ํ๋ถํฐ 3๊ฐ์ ์ค๋น ํ๋, ๊ธฐ์ ๋ณ ๋์ด๋, ์์ฃผ ๋์ค๋ ์๊ณ ๋ฆฌ์ฆ๊น์ง ์ ์ ๊ฐ๋ฐ์๋ฅผ ์ํ ์ฝ๋ฉํ ์คํธ ์ค๋น๋ฒ์ ์ด์ ๋ฆฌํฉ๋๋ค.
๐ ์ด ๊ธ์์ ๋ค๋ฃฐ ๋ด์ฉ
์ฝ๋ฉํ ์คํธ๊ฐ ์ฑ์ฉ์์ ์ฐจ์งํ๋ ๋น์ค
๋๋ถ๋ถ์ IT ๊ธฐ์ ์ ์๋ฅ ํฉ๊ฒฉ ์งํ ์ฝ๋ฉํ ์คํธ๋ฅผ ์ค์ํฉ๋๋ค. ์ฝ๋ฉํ ์คํธ์ ์ญํ ์ "์ด ์ฌ๋์ด ๊ธฐ๋ณธ์ ์ธ ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ์ด ์๋๊ฐ"๋ฅผ ๊ฒ์ฆํ๋ ๊ฒ์ ๋๋ค.
- ๋๊ธฐ์ (์ผ์ฑ/LG/ํ๋) โ ์ฝ๋ฉํ ์คํธ ํต๊ณผ๊ฐ ๋ฉด์ ์ฐธ๊ฐ ํ์ ์กฐ๊ฑด
- IT ๊ธฐ์ (์นด์นด์ค/๋ค์ด๋ฒ/๋ผ์ธ) โ ์ฝ๋ฉํ ์คํธ ๋์ด๋๊ฐ ๋๊ณ , ๋ฑ๊ธ์ผ๋ก ๋ฉด์ ์์ ๊ฒฐ์
- ์คํํธ์ โ ์ฝ๋ฉํ ์คํธ ๋์ ๊ณผ์ ํ(์ค๋ฌด ์ฝ๋ ์์ฑ) ๋ง์. ํ์ง๋ง ์๋ฆฌ์ฆB ์ด์์ ์ฝ๋ฉํ ์คํธ ๋์ ์ถ์ธ
์์์๋ฅผ ์๋ฌด๋ฆฌ ์ ์จ๋ ์ฝ๋ฉํ ์คํธ์์ ๋จ์ด์ง๋ฉด ๋์ ๋๋ค. ์ต์ 2๊ฐ์ ์ ๋ถํฐ ์ค๋นํ์ธ์.
์ธ์ด ์ ํ: Python vs Java vs C++
| ์ธ์ด | ์ฅ์ | ๋จ์ | ์ถ์ฒ ๋์ |
|---|---|---|---|
| Python | ๋ฌธ๋ฒ ๊ฐ๊ฒฐ, ์ฝ๋ ์งง์, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ๋ถ | ์คํ ์๋ ๋๋ฆผ (์๊ฐ ์ ํ ์ฃผ์) | ์ฒ์ ์์ํ๋ ์ฌ๋, ๋น ๋ฅธ ๊ตฌํ์ด ํ์ํ ๊ฒฝ์ฐ |
| Java | ๋๊ธฐ์ ์ ํธ, ์์ ์ ์๋ | ์ฝ๋ ๊ธธ์ด์ง, ์ ์ถ๋ ฅ ์ฒ๋ฆฌ ๋ฒ๊ฑฐ๋ก์ | ์ผ์ฑ ์ง์์ (์ผ์ฑ์ Java/C++ ๊ถ์ฅ) |
| C++ | ์ต๊ณ ์๋, ์๊ณ ๋ฆฌ์ฆ ๋ํ ํ์ค | ์ง์ ์ฅ๋ฒฝ ๋์, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ํ์ | ์๊ณ ๋ฆฌ์ฆ์ ์์ ์๋ ๊ฒฝ์ฐ, ์๋ ์ค์ํ ๋ฌธ์ |
๊ฒฐ๋ก : ํน๋ณํ ์ด์ ๊ฐ ์์ผ๋ฉด Python์ผ๋ก ์์ํ์ธ์. ์ผ์ฑ ์ง์์ด ํ์ ์ด๋ฉด Java. ์ด๋ฏธ C++์ ์ต์ํ๋ฉด C++.
์์ฃผ ๋์ค๋ ์๊ณ ๋ฆฌ์ฆ ์ ํ TOP 7
์๋ 7๊ฐ๊ฐ ๊ฐ์ฅ ๋น์ถ๋๋ ํต์ฌ ์ ํ์ ๋๋ค:
- ๊ตฌํ/์๋ฎฌ๋ ์ด์ โ ๋ฌธ์ ๋ฅผ ๊ทธ๋๋ก ์ฝ๋๋ก ์ฎ๊ธฐ๊ธฐ. ์ผ์ฑ ๋น์ถ
- DFS/BFS (๊ทธ๋ํ ํ์) โ ๊ธธ ์ฐพ๊ธฐ, ์ฐ๊ฒฐ ์์, ์ต๋จ ๊ฒฝ๋ก. ๊ฐ์ฅ ๋น์ถ
- ๋์ ํ๋ก๊ทธ๋๋ฐ (DP) โ ์ ํ์ ์ฐพ๊ธฐ. ์นด์นด์ค/๋ค์ด๋ฒ ๋น์ถ
- ๊ทธ๋ฆฌ๋ โ ํ์ฌ ์ต์ ์ ์ ํ ๋ฐ๋ณต. ๋น๊ต์ ์ฌ์ด ํธ
- ์ ๋ ฌ/์ด๋ถ ํ์ โ ๋ฐ์ดํฐ ์ ๋ ฌ ํ ํ์. ๊ธฐ๋ณธ๊ธฐ
- ๋ฌธ์์ด ์ฒ๋ฆฌ โ ํ์ฑ, ํจํด ๋งค์นญ. ์ค๋ฌด์ ๊ฐ๊น์ด ์ ํ
- ์๋ฃ๊ตฌ์กฐ ํ์ฉ โ ์คํ, ํ, ํด์๋งต, ํ. ๋ชจ๋ ์ ํ์ ๊ธฐ๋ฐ
์ฐ์ ์์: ๊ตฌํ โ DFS/BFS โ ๊ทธ๋ฆฌ๋ โ DP โ ์ ๋ ฌ/์ด๋ถํ์ ์์๋ก ๊ณต๋ถํ์ธ์. ์ฌ์ด ์ ํ๋ถํฐ ์์ ๊ฐ์ ์๋ ๊ฒ ์ค์ํฉ๋๋ค.
์ฐ์ต ํ๋ซํผ: ๋ฐฑ์ค vs ํ๋ก๊ทธ๋๋จธ์ค
- ๋ฐฑ์ค (BOJ) โ ๋ฌธ์ ์ ์ต๋ค(2๋ง+), ์๊ณ ๋ฆฌ์ฆ ์ ํ๋ณ ๋ถ๋ฅ ์ ๋จ, ๊ธฐ์ด ๋ค์ง๊ธฐ์ ์ต์ . ๋จ, ์ค์ ๊ธฐ์ ์ฝ๋ฉํ ์คํธ ํ๊ฒฝ๊ณผ ๋ค๋ฆ
- ํ๋ก๊ทธ๋๋จธ์ค โ ์ค์ ๊ธฐ์ ์ฝ๋ฉํ ์คํธ ํ๋ซํผ์ผ๋ก ์ฌ์ฉ๋จ(์นด์นด์ค, ๋ค์ด๋ฒ ๋ฑ). ์ค์ ํ๊ฒฝ ์ฐ์ต์ ์ต์ . ๋ฌธ์ ์๋ ๋ฐฑ์ค๋ณด๋ค ์ ์
์ถ์ฒ ์ ๋ต: ๋ฐฑ์ค์ผ๋ก ๊ธฐ์ด(1~2๊ฐ์) โ ํ๋ก๊ทธ๋๋จธ์ค๋ก ์ค์ (1๊ฐ์) โ ๊ธฐ์ ๋ณ ๊ธฐ์ถ ํ๊ธฐ
3๊ฐ์ ์ฝ๋ฉํ ์คํธ ์ค๋น ํ๋
1๊ฐ์์ฐจ: ๊ธฐ์ด ๋ค์ง๊ธฐ
- ์ธ์ด ๊ธฐ๋ณธ ๋ฌธ๋ฒ ๋ณต์ต (์ ์ถ๋ ฅ, ์๋ฃํ, ๋ฐ๋ณต/์กฐ๊ฑด)
- ๋ฐฑ์ค ๋ธ๋ก ์ฆ~์ค๋ฒ ๋ฌธ์ ํ๋ฃจ 2๊ฐ
- ๊ตฌํ, ์ ๋ ฌ, ๋ฌธ์์ด ์ ํ ์ง์ค
2๊ฐ์์ฐจ: ํต์ฌ ์๊ณ ๋ฆฌ์ฆ
- DFS/BFS, ๊ทธ๋ฆฌ๋, DP ํ์ต
- ๋ฐฑ์ค ์ค๋ฒ~๊ณจ๋ ๋ฌธ์ ํ๋ฃจ 1~2๊ฐ
- ๋ชป ํผ ๋ฌธ์ ํ์ด ๋ถ์ (์ ๋ชป ํ์๋์ง ๊ธฐ๋ก)
3๊ฐ์์ฐจ: ์ค์ ๋ชจ์
- ํ๋ก๊ทธ๋๋จธ์ค ๋ ๋ฒจ2~3 ๋ฌธ์
- ๊ธฐ์ ๋ณ ๊ธฐ์ถ ๋ฌธ์ (ํ๋ก๊ทธ๋๋จธ์ค ๊ธฐ์ ์ฝ๋ฉํ ์คํธ ์น์ )
- ์๊ฐ ์ ํ ๋๊ณ ๋ชจ์๊ณ ์ฌ (2์๊ฐ์ 3๋ฌธ์ )
๊ธฐ์ ๋ณ ์ฝ๋ฉํ ์คํธ ๋์ด๋์ ํน์ง
| ๊ธฐ์ | ๋์ด๋ | ํน์ง | ํฉ๊ฒฉ ๊ธฐ์ค |
|---|---|---|---|
| ์ผ์ฑ์ ์ | ์ค์ | ๊ตฌํ/์๋ฎฌ๋ ์ด์ ์ค์ฌ, 4์๊ฐ 2๋ฌธ์ (์ฝ๋ํธ๋ฆฌ ๊ธฐ์ค) | 2๋ฌธ์ ๋ชจ๋ ํต๊ณผ |
| ์นด์นด์ค | ์ | ๋ค์ํ ์ ํ, 5์๊ฐ 7๋ฌธ์ | 4๋ฌธ์ ์ด์ (๋ฑ๊ธ๋ณ ์ฐจ๋ฑ) |
| ๋ค์ด๋ฒ | ์ค์ | DP, ๊ทธ๋ํ ๋น์ถ | ๋น๊ณต๊ฐ (๋์ด๋ ์์๊ถ ํ์) |
| ๋ผ์ธ | ์ค | ๊ตฌํ + ์๋ฃ๊ตฌ์กฐ | ๋น๊ณต๊ฐ |
| ์คํํธ์ | ํ~์ค | ๊ณผ์ ํ ๋๋ ๊ฐ๋จํ ์๊ณ ๋ฆฌ์ฆ | ์ฝ๋ ํ์ง + ์์ฑ๋ |
์ํ ๋น์ผ ์ค์ ์ ๋ต
- ์ฌ์ด ๋ฌธ์ ๋ถํฐ โ ์ ์ฒด ๋ฌธ์ ๋ฅผ ๋จผ์ ํ๊ณ , ํ์คํ ํ ์ ์๋ ๊ฒ๋ถํฐ. ์์ ๊ฐ ํ๋ณด
- ์์ ํ์ ๋จผ์ โ ์ต์ ์๊ณ ๋ฆฌ์ฆ์ด ์ ๋ ์ค๋ฅด๋ฉด brute force๋ถํฐ. ๋ถ๋ถ ์ ์๋ผ๋
- ์ฃ์ง ์ผ์ด์ค ์ฒดํฌ โ ๋น ๋ฐฐ์ด, ์ต๋๊ฐ, ์์, 1๊ฐ์ง๋ฆฌ ์ ๋ ฅ. ์ฌ๊ธฐ์ ๋ง์ด ํ๋ฆผ
- ์๊ฐ ๋ฐฐ๋ถ โ ํ ๋ฌธ์ ์ 40๋ถ ์ด์ ๋งค๋ฌ๋ฆฌ์ง ๋ง๊ธฐ. ๋ค์ ๋ฌธ์ ๋ก ๋์ด๊ฐ๊ธฐ
- ๋๋ฒ๊น > ์ ํ์ด โ ๊ฑฐ์ ๋ค ํ์๋๋ฐ ์ ๋๋ฉด ์ฒ์๋ถํฐ ์๋ก ์ฐ๊ธฐ๋ณด๋ค ๋๋ฒ๊น ์ด ๋น ๋ฆ