๐ ์๊ณ ๋ฆฌ์ฆ (143) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [C++/BOJ] 9465 : ์คํฐ์ปค (DP) https://www.acmicpc.net/problem/9465 ๋ฌธ์ ์๊ทผ์ด์ ์ฌ๋์ ์๋ฅ์ด๋ ๋ฌธ๋ฐฉ๊ตฌ์์ ์คํฐ์ปค 2n๊ฐ๋ฅผ ๊ตฌ๋งคํ๋ค. ์คํฐ์ปค๋ ๊ทธ๋ฆผ (a)์ ๊ฐ์ด 2ํ n์ด๋ก ๋ฐฐ์น๋์ด ์๋ค. ์๋ฅ์ด๋ ์คํฐ์ปค๋ฅผ ์ด์ฉํด ์ฑ ์์ ๊พธ๋ฏธ๋ ค๊ณ ํ๋ค. ์๋ฅ์ด๊ฐ ๊ตฌ๋งคํ ์คํฐ์ปค์ ํ์ง์ ๋งค์ฐ ์ข์ง ์๋ค. ์คํฐ์ปค ํ ์ฅ์ ๋ผ๋ฉด, ๊ทธ ์คํฐ์ปค์ ๋ณ์ ๊ณต์ ํ๋ ์คํฐ์ปค๋ ๋ชจ๋ ์ฐข์ด์ ธ์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค. ์ฆ, ๋ ์คํฐ์ปค์ ์ผ์ชฝ, ์ค๋ฅธ์ชฝ, ์, ์๋์ ์๋ ์คํฐ์ปค๋ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค. ๋ชจ๋ ์คํฐ์ปค๋ฅผ ๋ถ์ผ ์ ์๊ฒ๋ ์๋ฅ์ด๋ ๊ฐ ์คํฐ์ปค์ ์ ์๋ฅผ ๋งค๊ธฐ๊ณ , ์ ์์ ํฉ์ด ์ต๋๊ฐ ๋๊ฒ ์คํฐ์ปค๋ฅผ ๋ผ์ด๋ด๋ ค๊ณ ํ๋ค. ๋จผ์ , ๊ทธ๋ฆผ (b)์ ๊ฐ์ด ๊ฐ ์คํฐ์ปค์ ์ ์๋ฅผ ๋งค๊ฒผ๋ค. ์๋ฅ์ด๊ฐ ๋ ์ ์๋ ์คํฐ์ปค์ ์ ์์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์.. [C++/BOJ] 10971 : ์ธํ์ ์ํ 2 (์์ ํ์, dfs, Backtracking) https://www.acmicpc.net/problem/10971 ๋ฌธ์ ์ธํ์ ์ํ ๋ฌธ์ ๋ ์์ด๋ก Traveling Salesman problem (TSP) ๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋ฌธ์ ๋ก computer science ๋ถ์ผ์์ ๊ฐ์ฅ ์ค์ํ๊ฒ ์ทจ๊ธ๋๋ ๋ฌธ์ ์ค ํ๋์ด๋ค. ์ฌ๋ฌ ๊ฐ์ง ๋ณ์ข ๋ฌธ์ ๊ฐ ์์ผ๋, ์ฌ๊ธฐ์๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ํํ์ ๋ฌธ์ ๋ฅผ ์ดํด๋ณด์. 1๋ฒ๋ถํฐ N๋ฒ๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์๋ ๋์๋ค์ด ์๊ณ , ๋์๋ค ์ฌ์ด์๋ ๊ธธ์ด ์๋ค. (๊ธธ์ด ์์ ์๋ ์๋ค) ์ด์ ํ ์ธํ์์ด ์ด๋ ํ ๋์์์ ์ถ๋ฐํด N๊ฐ์ ๋์๋ฅผ ๋ชจ๋ ๊ฑฐ์ณ ๋ค์ ์๋์ ๋์๋ก ๋์์ค๋ ์ํ ์ฌํ ๊ฒฝ๋ก๋ฅผ ๊ณํํ๋ ค๊ณ ํ๋ค. ๋จ, ํ ๋ฒ ๊ฐ๋ ๋์๋ก๋ ๋ค์ ๊ฐ ์ ์๋ค. (๋งจ ๋ง์ง๋ง์ ์ฌํ์ ์ถ๋ฐํ๋ ๋์๋ก ๋์์ค๋ ๊ฒ์ ์์ธ) ์ด๋ฐ ์ฌํ ๊ฒฝ๋ก๋ ์ฌ๋ฌ ๊ฐ.. [C++/BOJ] 9663 : N-Queen (์์ ํ์, Backtracking) https://www.acmicpc.net/problem/9663 ๋ฌธ์ N-Queen ๋ฌธ์ ๋ ํฌ๊ธฐ๊ฐ N × N์ธ ์ฒด์คํ ์์ ํธ N๊ฐ๋ฅผ ์๋ก ๊ณต๊ฒฉํ ์ ์๊ฒ ๋๋ ๋ฌธ์ ์ด๋ค. N์ด ์ฃผ์ด์ก์ ๋, ํธ์ ๋๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N < 15) ์ถ๋ ฅ ์ฒซ์งธ ์ค์ ํธ N๊ฐ๋ฅผ ์๋ก ๊ณต๊ฒฉํ ์ ์๊ฒ ๋๋ ๊ฒฝ์ฐ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ฌธ์ ํํธ์ ํธ์ Show must go on ๋ ธ๋๊ฐ ์๊ธธ๋ ์ ๋๊ฒ ๋ค์ผ๋ฉด์ ํ์์ ๋ฐฑ์ค ํฐ์ด ๊ณจ๋4, ์์ ํ์ + ๋ฐฑํธ๋ํน ๋ฌธ์ ์ด๋ค. ์ฒ์์ ๋ฐฑํธ๋ํน ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํ๊ธด ํ์์ง๋ง ์ฌ๊ท ๊ณผ์ ์ด ์ ์ดํด๊ฐ ์๋์๋๋ฐ, ์ด๋ค ๋์์์ ์๋ ๊ทธ๋ฆผ์ ๋ณด๊ณ ๋ฐ๋ก ์ดํด๊ฐ ๋์๋ค. ์ฌ๊ท์ ํ๋ฆ๊ณผ ๋๊น์ ๋ฐ๋ก ๋ณผ ์ ์๋ ๊ทธ๋ฆผ์ด๋ค! main ide.. [C++/PGS] Lv.3 : N์ผ๋ก ํํ (DP) https://school.programmers.co.kr/learn/courses/30/lessons/42895 ๋ฌธ์ ์ค๋ช ์๋์ ๊ฐ์ด 5์ ์ฌ์น์ฐ์ฐ๋ง์ผ๋ก 12๋ฅผ ํํํ ์ ์์ต๋๋ค. 12 = 5 + 5 + (5 / 5) + (5 / 5) 12 = 55 / 5 + 5 / 5 12 = (55 + 5) / 5 5๋ฅผ ์ฌ์ฉํ ํ์๋ ๊ฐ๊ฐ 6,5,4 ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด์ค ๊ฐ์ฅ ์์ ๊ฒฝ์ฐ๋ 4์ ๋๋ค. ์ด์ฒ๋ผ ์ซ์ N๊ณผ number๊ฐ ์ฃผ์ด์ง ๋, N๊ณผ ์ฌ์น์ฐ์ฐ๋ง ์ฌ์ฉํด์ ํํ ํ ์ ์๋ ๋ฐฉ๋ฒ ์ค N ์ฌ์ฉํ์์ ์ต์๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์. ์ ํ์ฌํญ N์ 1 ์ด์ 9 ์ดํ์ ๋๋ค. number๋ 1 ์ด์ 32,000 ์ดํ์ ๋๋ค. ์์์๋ ๊ดํธ์ ์ฌ์น์ฐ์ฐ๋ง ๊ฐ๋ฅํ๋ฉฐ ๋๋๊ธฐ ์ฐ์ฐ์์ ๋.. [C++/PGS] Lv.3 : ์์ (๊ทธ๋ํ/Floyd-Warshall) https://school.programmers.co.kr/learn/courses/30/lessons/49191# ๋ฌธ์ ์ค๋ช n๋ช ์ ๊ถํฌ์ ์๊ฐ ๊ถํฌ ๋ํ์ ์ฐธ์ฌํ๊ณ ๊ฐ๊ฐ 1๋ฒ๋ถํฐ n๋ฒ๊น์ง ๋ฒํธ๋ฅผ ๋ฐ์์ต๋๋ค. ๊ถํฌ ๊ฒฝ๊ธฐ๋ 1๋1 ๋ฐฉ์์ผ๋ก ์งํ์ด ๋๊ณ , ๋ง์ฝ A ์ ์๊ฐ B ์ ์๋ณด๋ค ์ค๋ ฅ์ด ์ข๋ค๋ฉด A ์ ์๋ B ์ ์๋ฅผ ํญ์ ์ด๊น๋๋ค. ์ฌํ์ ์ฃผ์ด์ง ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ง๊ณ ์ ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๋ ค ํฉ๋๋ค. ํ์ง๋ง ๋ช๋ช ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์คํ์ฌ ์ ํํ๊ฒ ์์๋ฅผ ๋งค๊ธธ ์ ์์ต๋๋ค. ์ ์์ ์ n, ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๋ด์ 2์ฐจ์ ๋ฐฐ์ด results๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ ์ ํํ๊ฒ ์์๋ฅผ ๋งค๊ธธ ์ ์๋ ์ ์์ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ์ ์์ ์๋ 1๋ช ์ด์ 100๋ช ์ดํ์ ๋๋ค. ๊ฒฝ๊ธฐ .. [C++/PGS] Lv.3 : ๊ฐ์ฅ ๋จผ ๋ ธ๋ (๊ทธ๋ํ/bfs) https://school.programmers.co.kr/learn/courses/30/lessons/49189 ๋ฌธ์ ์ค๋ช n๊ฐ์ ๋ ธ๋๊ฐ ์๋ ๊ทธ๋ํ๊ฐ ์์ต๋๋ค. ๊ฐ ๋ ธ๋๋ 1๋ถํฐ n๊น์ง ๋ฒํธ๊ฐ ์ ํ์์ต๋๋ค. 1๋ฒ ๋ ธ๋์์ ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋์ ๊ฐฏ์๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋๋ ์ต๋จ๊ฒฝ๋ก๋ก ์ด๋ํ์ ๋ ๊ฐ์ ์ ๊ฐ์๊ฐ ๊ฐ์ฅ ๋ง์ ๋ ธ๋๋ค์ ์๋ฏธํฉ๋๋ค. ๋ ธ๋์ ๊ฐ์ n, ๊ฐ์ ์ ๋ํ ์ ๋ณด๊ฐ ๋ด๊ธด 2์ฐจ์ ๋ฐฐ์ด vertex๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, 1๋ฒ ๋ ธ๋๋ก๋ถํฐ ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋๊ฐ ๋ช ๊ฐ์ธ์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๋ ธ๋์ ๊ฐ์ n์ 2 ์ด์ 20,000 ์ดํ์ ๋๋ค. ๊ฐ์ ์ ์๋ฐฉํฅ์ด๋ฉฐ ์ด 1๊ฐ ์ด์ 50,000๊ฐ ์ดํ์ ๊ฐ์ ์ด ์์ต๋๋ค. ver.. [C++/PGS] Lv.2 : H-index (์ ๋ ฌ) https://school.programmers.co.kr/learn/courses/30/lessons/42747# ๋ฌธ์ ์ค๋ช H-Index๋ ๊ณผํ์์ ์์ฐ์ฑ๊ณผ ์ํฅ๋ ฅ์ ๋ํ๋ด๋ ์งํ์ ๋๋ค. ์ด๋ ๊ณผํ์์ H-Index๋ฅผ ๋ํ๋ด๋ ๊ฐ์ธ h๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ์ํค๋ฐฑ๊ณผ1์ ๋ฐ๋ฅด๋ฉด, H-Index๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํฉ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ nํธ ์ค, h๋ฒ ์ด์ ์ธ์ฉ๋ ๋ ผ๋ฌธ์ด hํธ ์ด์์ด๊ณ ๋๋จธ์ง ๋ ผ๋ฌธ์ด h๋ฒ ์ดํ ์ธ์ฉ๋์๋ค๋ฉด h์ ์ต๋๊ฐ์ด ์ด ๊ณผํ์์ H-Index์ ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์ธ์ฉ ํ์๋ฅผ ๋ด์ ๋ฐฐ์ด citations๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๊ณผํ์์ H-Index๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์๋ 1ํธ ์ด์ .. [C++/PGS] Lv.2 : ์นดํซ (์์ ํ์) https://school.programmers.co.kr/learn/courses/30/lessons/42842 ๋ฌธ์ ์ค๋ช Leo๋ ์นดํซ์ ์ฌ๋ฌ ๊ฐ๋ค๊ฐ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ค์์๋ ๋ ธ๋์์ผ๋ก ์น ํด์ ธ ์๊ณ ํ ๋๋ฆฌ 1์ค์ ๊ฐ์์ผ๋ก ์น ํด์ ธ ์๋ ๊ฒฉ์ ๋ชจ์ ์นดํซ์ ๋ดค์ต๋๋ค. Leo๋ ์ง์ผ๋ก ๋์์์ ์๊น ๋ณธ ์นดํซ์ ๋ ธ๋์๊ณผ ๊ฐ์์ผ๋ก ์์น ๋ ๊ฒฉ์์ ๊ฐ์๋ ๊ธฐ์ตํ์ง๋ง, ์ ์ฒด ์นดํซ์ ํฌ๊ธฐ๋ ๊ธฐ์ตํ์ง ๋ชปํ์ต๋๋ค. Leo๊ฐ ๋ณธ ์นดํซ์์ ๊ฐ์ ๊ฒฉ์์ ์ brown, ๋ ธ๋์ ๊ฒฉ์์ ์ yellow๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ ์นดํซ์ ๊ฐ๋ก, ์ธ๋ก ํฌ๊ธฐ๋ฅผ ์์๋๋ก ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๊ฐ์ ๊ฒฉ์์ ์ brown์ 8 ์ด์ 5,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค. ๋ ธ๋์ ๊ฒฉ์์ ์ ye.. ์ด์ 1 ยทยทยท 7 8 9 10 11 12 13 ยทยทยท 18 ๋ค์