์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ํ์ด์ฌ
- ๋์ ํฉ
- DFS
- ์ํ
- ๊น์ด์ฐ์ ํ์
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- SQL
- DP
- ๋๋น์ฐ์ ํ์
- ๊ทธ๋ํ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๊ทธ๋ํํ์
- ์ ๋ ฌ
- ์๊ณ ๋ฆฌ์ฆ
- ์์๊ตฌํ๊ธฐ
- ๊ทธ๋ฆฌ๋
- BFS
- ๊ตฌํ
- ํ๋ก๊ทธ๋๋จธ์ค
- LIS
- ์์ํ์
- db
- ๋ณํฉ์ ๋ ฌ
- ์๋ฃ๊ตฌ์กฐ
- ๋ฐฑ์ค
- ๋ค์ด๋๋ฏนํ๋ก๊ทธ๋๋ฐ
- ๋์ ๊ณํ๋ฒ
- ์ค๋ธ์
- ๋จธ์ง์ํธ
- ์ฐ์ ์์ํ
๋ชฉ๋ก์ ๋ ฌ (11)
๐๐ญ๐ฐ๐ธ ๐ฃ๐ถ๐ต ๐ด๐ต๐ฆ๐ข๐ฅ๐บ
๋ฌธ์ ๋งค์ด ๊ฒ์ ์ข์ํ๋ Leo๋ ๋ชจ๋ ์์์ ์ค์ฝ๋น ์ง์๋ฅผ K ์ด์์ผ๋ก ๋ง๋ค๊ณ ์ถ์ต๋๋ค. ๋ชจ๋ ์์์ ์ค์ฝ๋น ์ง์๋ฅผ K ์ด์์ผ๋ก ๋ง๋ค๊ธฐ ์ํด Leo๋ ์ค์ฝ๋น ์ง์๊ฐ ๊ฐ์ฅ ๋ฎ์ ๋ ๊ฐ์ ์์์ ์๋์ ๊ฐ์ด ํน๋ณํ ๋ฐฉ๋ฒ์ผ๋ก ์์ด ์๋ก์ด ์์์ ๋ง๋ญ๋๋ค. ์์ ์์์ ์ค์ฝ๋น ์ง์ = ๊ฐ์ฅ ๋งต์ง ์์ ์์์ ์ค์ฝ๋น ์ง์ + (๋ ๋ฒ์งธ๋ก ๋งต์ง ์์ ์์์ ์ค์ฝ๋น ์ง์ * 2) Leo๋ ๋ชจ๋ ์์์ ์ค์ฝ๋น ์ง์๊ฐ K ์ด์์ด ๋ ๋๊น์ง ๋ฐ๋ณตํ์ฌ ์์ต๋๋ค. Leo๊ฐ ๊ฐ์ง ์์์ ์ค์ฝ๋น ์ง์๋ฅผ ๋ด์ ๋ฐฐ์ด scoville๊ณผ ์ํ๋ ์ค์ฝ๋น ์ง์ K๊ฐ ์ฃผ์ด์ง ๋, ๋ชจ๋ ์์์ ์ค์ฝ๋น ์ง์๋ฅผ K ์ด์์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ์์ด์ผ ํ๋ ์ต์ ํ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ ์ฌํญ scoville์..
๋ฌธ์ ์ N๊ฐ A1, A2, ..., AN์ด ์ฃผ์ด์ง๋ค. A๋ฅผ ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ์ ๋, ์์์๋ถํฐ K๋ฒ์งธ ์๋ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ N(1 ≤ N ≤ 5,000,000)๊ณผ K (1 ≤ K ≤ N)์ด ์ฃผ์ด์ง๋ค. ๋์งธ์๋ A1, A2, ..., AN์ด ์ฃผ์ด์ง๋ค. (-109 ≤ Ai ≤ 109) ์ถ๋ ฅ A๋ฅผ ์ ๋ ฌํ์ ๋, ์์์๋ถํฐ K๋ฒ์งธ ์๋ ์๋ฅผ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ์ ์ด์ฉํ์ฌ ํ ์ ์๋ ๋ฌธ์ . ์๋ฅผ ์ ๋ ฅ์ ๋ฐ์ ๋ค, sort ํจ์๋ฅผ ์ด์ฉํ์ฌ ์ ๋ ฌํ ๋ค K๋ฒ์งธ ์๋ฅผ ์ถ๋ ฅํ๋ฉด ๋๋ ๊ฐ๋จํ ๋ฌธ์ ๋ค. ์ฝ๋ #include #include #include using namespace std; int main(void) { int n, k; scanf("%d %d", &n, &k); vecto..
๋ฌธ์ ์ค๊ท๋ ์ซ์ ์นด๋ N์ฅ์ ๊ฐ์ง๊ณ ์๋ค. ์ซ์ ์นด๋์๋ ์ ์๊ฐ ํ๋ ์ ํ์๋๋ฐ, ์ ํ์๋ ์๋ -262๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 262๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ์ค๊ท๊ฐ ๊ฐ์ง๊ณ ์๋ ์นด๋๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๋ง์ด ๊ฐ์ง๊ณ ์๋ ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ง์ฝ, ๊ฐ์ฅ ๋ง์ด ๊ฐ์ง๊ณ ์๋ ์ ์๊ฐ ์ฌ๋ฌ ๊ฐ์ง๋ผ๋ฉด, ์์ ๊ฒ์ ์ถ๋ ฅํ๋ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์ค๊ท๊ฐ ๊ฐ์ง๊ณ ์๋ ์ซ์ ์นด๋์ ๊ฐ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ ์ค์๋ ์ซ์ ์นด๋์ ์ ํ์๋ ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค์ ์ค๊ท๊ฐ ๊ฐ์ฅ ๋ง์ด ๊ฐ์ง๊ณ ์๋ ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ์ ์ด์ฉํ์ฌ ํ ์ ์๋ ๋ฌธ์ . ์นด๋์ ์ ํ์๋ ์ซ์์ ๊ทธ ์ซ์ ์นด๋์ ์ฅ์๋ฅผ ๋งค์น์ํค๊ธฐ ์ํด map์ด๋ผ๋ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์๋ค. iteration์ ..
๋ฌธ์ N๊ฐ์ ์๊ฐ ์ฃผ์ด์ก์ ๋, ์ด๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์์ ๊ฐ์ N(1 ≤ N ≤ 10,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ์ซ์๊ฐ ์ฃผ์ด์ง๋ค. ์ด ์๋ 10,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ๊ฒฐ๊ณผ๋ฅผ ํ ์ค์ ํ๋์ฉ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ์ ์ด์ฉํ ๋ฌธ์ . ..์ธ๋ฐ ์๊ฐ ์ ํ์ด 3์ด๊ณ ๋ฉ๋ชจ๋ฆฌ ์ ํ์ด 8MB๊ณ ์ ๋ ฅ๋ฐ์ ์ ์๋ ์์ ๊ฐ์ ๋ฒ์๊ฐ [1, 10000000] ์ด๋ค. ์ฆ ๋ค๋ฅธ ์ ๋ ฌ ๋ฌธ์ ์ฒ๋ผ ์๋ฅผ ๋ชจ๋ ๋ฐฐ์ด์ ์ ๋ ฅ๋ฐ์ ๋ค, STL ํจ์๋ ์ผ๋ฐ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ํตํด ์ ๋ ฌํ๋ ๋ฐฉ์์ผ๋ก ํ์ง ๋ง๋ผ๋ ๋ป์ด๋ค. ๋์ ์์ ๋ฒ์๊ฐ [1, 10000]์ด๊ธฐ ๋๋ฌธ์ 1๋ถํฐ 10,000๊น์ง์ ์ธ๋ฑ์ค๋ฅผ ํ์ํ ์ ์..
๋ฌธ์ ๋ํ์ด๋ค ๋ฐ ํ์ N๋ช ์ ์ด๋ฆ๊ณผ ๊ตญ์ด, ์์ด, ์ํ ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ด๋, ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ผ๋ก ํ์์ ์ฑ์ ์ ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๊ตญ์ด ์ ์๊ฐ ๊ฐ์ํ๋ ์์๋ก ๊ตญ์ด ์ ์๊ฐ ๊ฐ์ผ๋ฉด ์์ด ์ ์๊ฐ ์ฆ๊ฐํ๋ ์์๋ก ๊ตญ์ด ์ ์์ ์์ด ์ ์๊ฐ ๊ฐ์ผ๋ฉด ์ํ ์ ์๊ฐ ๊ฐ์ํ๋ ์์๋ก ๋ชจ๋ ์ ์๊ฐ ๊ฐ์ผ๋ฉด ์ด๋ฆ์ด ์ฌ์ ์์ผ๋ก ์ฆ๊ฐํ๋ ์์๋ก (๋จ, ์์คํค ์ฝ๋์์ ๋๋ฌธ์๋ ์๋ฌธ์๋ณด๋ค ์์ผ๋ฏ๋ก ์ฌ์ ์์ผ๋ก ์์ ์จ๋ค.) ์ ๋ ฅ ์ฒซ์งธ ์ค์ ๋ํ์ด๋ค ๋ฐ์ ํ์์ ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ ํ ์ค์ ํ๋์ฉ ๊ฐ ํ์์ ์ด๋ฆ, ๊ตญ์ด, ์์ด, ์ํ ์ ์๊ฐ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด ์ฃผ์ด์ง๋ค. ์ ์๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ์ด๋ฆ์ ์ํ๋ฒณ ๋์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์..
๋ฌธ์ 2์ฐจ์ ํ๋ฉด ์์ ์ N๊ฐ๊ฐ ์ฃผ์ด์ง๋ค. ์ขํ๋ฅผ y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก, y์ขํ๊ฐ ๊ฐ์ผ๋ฉด x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์๋ก ์ ๋ ฌํ ๋ค์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์ ์ ๊ฐ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ i๋ฒ์ ์ ์์น xi์ yi๊ฐ ์ฃผ์ด์ง๋ค. (-100,000 ≤ xi, yi ≤ 100,000) ์ขํ๋ ํญ์ ์ ์์ด๊ณ , ์์น๊ฐ ๊ฐ์ ๋ ์ ์ ์๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ์ ์ ์ ๋ ฌํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ์ ์ด์ฉํ์ฌ ํธ๋ ๋ฌธ์ . 11650๋ฒ ์ขํ ์ ๋ ฌํ๊ธฐ ์ ๋์ผํ๊ฒ ํ๋ฉด ๋๋ค. ๋ณํฉ ์ ๋ ฌ์ ์ฌ์ฉํ์ฌ ํ์๊ณ , y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก - y์ขํ๊ฐ ๊ฐ์ผ๋ฉด x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก ์ ๋ ฌํด์ผ๋๊ธฐ ๋๋ฌธ์ 11650๋ฒ ๋ฌธ์ ํ๋๋ ์ด์ง๋ง ๋ค๋ฅด๊ฒ ..
๋ฌธ์ 2์ฐจ์ ํ๋ฉด ์์ ์ N๊ฐ๊ฐ ์ฃผ์ด์ง๋ค. ์ขํ๋ฅผ x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก, x์ขํ๊ฐ ๊ฐ์ผ๋ฉด y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์๋ก ์ ๋ ฌํ ๋ค์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์ ์ ๊ฐ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ i๋ฒ์ ์ ์์น xi์ yi๊ฐ ์ฃผ์ด์ง๋ค. (-100,000 ≤ xi, yi ≤ 100,000) ์ขํ๋ ํญ์ ์ ์์ด๊ณ , ์์น๊ฐ ๊ฐ์ ๋ ์ ์ ์๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ์ ์ ์ ๋ ฌํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ์ ์ด์ฉํ์ฌ ํธ๋ ๋ฌธ์ . ๋ณํฉ ์ ๋ ฌ์ ์ฌ์ฉํ์ฌ ํ์๊ณ , x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก - x์ขํ๊ฐ ๊ฐ์ผ๋ฉด y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก ์ ๋ ฌํด์ผ๋๊ธฐ ๋๋ฌธ์ ์กฐ๊ฑด๋ฌธ์ ํ๋ ๋ ๋ถ์๋ค. ์ฝ๋ #include void merge(int** sorted,..
๋ฌธ์ N๊ฐ์ ์๊ฐ ์ฃผ์ด์ก์ ๋, ์ด๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์์ ๊ฐ์ N(1 ≤ N ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ด ์๋ ์ ๋๊ฐ์ด 1,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๋ค. ์๋ ์ค๋ณต๋์ง ์๋๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ๊ฒฐ๊ณผ๋ฅผ ํ ์ค์ ํ๋์ฉ ์ถ๋ ฅํ๋ค. ์ ๋ ฌ ๋ฌธ์ . ์ฒ์์ ํต ์ ๋ ฌ๋ก ํ์์ผ๋ ์ ์ถ ์ ์ ์ํ ๋๋์ด ๋ค์ด ๊ตฌ๊ธ๋ง์ ํด๋ดค๋๋ ํต์ ๋ ฌ์ ์ต์ ์ ๊ฒฝ์ฐ ์๊ฐ๋ณต์ก๋๊ฐ O(n2)๋ก, ์๊ฐ์ด๊ณผ์ ์ํ์ด ์๋ค๊ณ ํ๋๋ผ.. ๊ทธ๋ฆฌํ์ฌ ๋ณํฉ ์ ๋ ฌ์ ๊ตฌํํ์ฌ ํ์๋ค. ๋ณํฉ์ ๋ ฌ : ๐ ์ฝ๋ #include void merge(int* sorted, int* arr, int begin, int mid..
2. ํต ์ ๋ ฌ ; Quick Sort 2.1 ๊ฐ๋ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ ์ ๋ ฌ ๋ฐฉ๋ฒ ์ค ํ๋๋ก, ๋ณํฉ ์ ๋ ฌ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์ฒด ์งํฉ์ ์์ ํฌ๊ธฐ์ ๋ถ๋ถ์งํฉ์ผ๋ก ๋๋์ด ์ ๋ ฌ์ ์ํํ ๋ค ๋ค์ ํฉ์น๋ ์ ๋ ฌ ๋ฐฉ๋ฒ์ ์๋ฏธํ๋ค. ๋ณํฉ ์ ๋ ฌ์ ํต์ฌ ์ฐ์ฐ์ ๋ณํฉ์ธ ๋ฐ ๋นํด ํต ์ ๋ ฌ์ ํต์ฌ ์ฐ์ฐ์ ๋ถํ ์ด๋ค. ํต ์ ๋ ฌ์ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์งํ๋๋ค. 1. ๋ถํ (Divide) : ์ ๋ ฌํ ์งํฉ์ ๊ธฐ์ค๊ฐ์ ์ค์ฌ์ผ๋ก ๋ ๋ถ๋ถ์งํฉ์ผ๋ก ๋ถํ 2. ์ ๋ณต(Conquer) : ๋ถ๋ถ์งํฉ ๋ด์์ ๊ธฐ์ค๊ฐ์ ์ ๋ ฌ ์์น ์ ์ ์ด ๋ ์ฌ์ฉํ๋ ๊ธฐ์ค๊ฐ์ ํผ๋ด(Pivot) ์ด๋ผ๊ณ ํ๋๋ฐ, ์ฒซ ๋ฒ์งธ ์์ / ๋ง์ง๋ง ์์ / ๊ฐ์ด๋ฐ ์์ ๋ฑ ์์์ ์์์ ๊ฐ์ ์ ํ๋ฉด ๋๋ค. ์ด๋ ๊ฒ ์ ํ ๊ธฐ์ค๊ฐ์ ์ค์ฌ์ผ๋ก ์ผ์ชฝ(L)๊ณผ ์ค๋ฅธ์ชฝ(R) ๋ถ๋ถ์งํฉ์ผ๋ก ๋๋์ด ..
1. ๋ณํฉ ์ ๋ ฌ ; Merge Sort 1.1 ๊ฐ๋ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ ๋ํ์ ์ธ ์ ๋ ฌ ๋ฐฉ๋ฒ ์ค ํ๋๋ก, ์ฌ๋ฌ ์ ๋ ฌ๋ ์งํฉ๋ค์ ๋ณํฉํ์ฌ ํ๋์ ์ ๋ ฌ๋ ์งํฉ์ผ๋ก ๋ง๋๋ ์ ๋ ฌ๋ฐฉ๋ฒ์ ์๋ฏธํ๋ค. ๋ณํฉ ์ ๋ ฌ์ ๋ค์ ์ธ ๊ฐ์ง์ ๋จ๊ณ๋ฅผ ํตํด ์งํ๋๋ค. 1. ๋ถํ (Divide) : ํฐ ์งํฉ์ ๋ถ๋ถ์งํฉ์ผ๋ก ๋ถํ 2. ์ ๋ณต(Conquer) : ๋ถ๋ถ์งํฉ ๋ด์ ์์ ์ ๋ ฌ 3. ๊ฒฐํฉ(Combine) : ์ ๋ ฌ๋ ๋ถ๋ถ์งํฉ๋ค์ ํ๋์ ์งํฉ์ผ๋ก ์ ๋ ฌํ์ฌ ๊ฒฐํฉ ์๋ฆฌ๋ง ์๊ฐํ๋ฉด ๋ณต์กํด ๋ณด์ด์ง๋ง, ๊ทธ๋ฆผ๊ณผ ํจ๊ป ๋ณด๋ฉด ์ฝ๊ฒ ์ดํดํ ์ ์๋ค. ์ ๋ ฌ๋์ง ์์ ์งํฉ A๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑ๋์ด์๋ค. A = { 3, 8, 7, 2, 5, 1, 4, 6 } ์งํฉ A๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค๊ณ ๊ฐ์ ์ ํด๋ณด์. ๋ณํฉ ์ ๋ ฌํ๋ ๊ณผ์ ์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค...