๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/9465 9465๋ฒ: ์คํฐ์ปค ์ฒซ์งธ ์ค์ ํ
์คํธ ์ผ์ด์ค์ ๊ฐ์ T๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ
์คํธ ์ผ์ด์ค์ ์ฒซ์งธ ์ค์๋ n (1 ≤ n ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ ๋ ์ค์๋ n๊ฐ์ ์ ์๊ฐ ์ฃผ์ด์ง๋ฉฐ, ๊ฐ ์ ์๋ ๊ทธ ์์น์ ํด๋นํ๋ ์คํฐ์ปค์ www.acmicpc.net โ๏ธ ๋ฌธ์ ๐ ๋ฌธ์ ํด๊ฒฐ ํด๋น ๋ฌธ์ ๋ 2xN ์คํฐ์ปค๊ฐ ์ฃผ์ด์ก์ ๋, ์คํฐ์ปค๋ฅผ ๊ณจ๋ผ ๊ฐ์ฅ ๋์ ์ ์์ ํฉ์ ๊ตฌํ๋ ๋ฌธ์ ์
๋๋ค. ์ด๋ ๊ณ ๋ฅธ ์คํฐ์ปค์ ์ข,์ฐ,์,ํ ์คํฐ์ปค๋ ์ ํํ ์ ์๊ฒ ๋ฉ๋๋ค. ์๋ ์ด ๋ฌธ์ ๋ ๊ฐ๋ก๋ก arr[0][0] -> arr[0][1] ... -> arr[1][N] ์ด๋ฐ ์์ผ๋ก ์งํํ๋ฉด์ ๊ณ์ฐํ๋ ค ํ๋๋ ์คํจํ์ฌ์ ์ธ๋ก (arr[0][1] -> arr[1][1] -..
๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/15486 15486๋ฒ: ํด์ฌ 2 ์ฒซ์งธ ์ค์ N (1 ≤ N ≤ 1,500,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ Ti์ Pi๊ฐ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด์ ์ฃผ์ด์ง๋ฉฐ, 1์ผ๋ถํฐ N์ผ๊น์ง ์์๋๋ก ์ฃผ์ด์ง๋ค. (1 ≤ Ti ≤ 50, 1 ≤ Pi ≤ 1,000) www.acmicpc.net โ๏ธ ๋ฌธ์ ํด๋น ๋ฌธ์ ๋ ๋ฐฑ์ค 14501๋ฒ (DFS) - ํด์ฌ ๋ฌธ์ ์ ๊ฐ์ง๋ง, ์๊ฐ ๋ณต์ก๋๊ฐ O(N) ์ผ๋ก ํด๊ฒฐ์ ํด์ผ ํต๊ณผํ ์ ์๋ ๋ฌธ์ ์
๋๋ค. 14501๋ฒ: ํด์ฌ ์ฒซ์งธ ์ค์ ๋ฐฑ์ค์ด๊ฐ ์ป์ ์ ์๋ ์ต๋ ์ด์ต์ ์ถ๋ ฅํ๋ค. www.acmicpc.net ๐ ๋ฌธ์ ํด๊ฒฐ ์ด๋ฒ์๋ DP๋ก ๋ฌธ์ ๋ฅผ ํ์ด์ผํฉ๋๋ค. ์ฐจ๊ทผ์ฐจ๊ทผ ํจ๊ป ์ดํด๋ณด๊ฒ ์ต๋๋ค. 1. ํ
์ด๋ธ ์ ์ ๋จผ์ dp[i]๋ฅผ..
๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
10844๋ฒ: ์ฌ์ด ๊ณ๋จ ์ (acmicpc.net) 10844๋ฒ: ์ฌ์ด ๊ณ๋จ ์ ์ฒซ์งธ ์ค์ ์ ๋ต์ 1,000,000,000์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ์ถ๋ ฅํ๋ค. www.acmicpc.net โ๏ธ ๋ฌธ์ ๐ ๋ฌธ์ ํด๊ฒฐ 1. ํ
์ด๋ธ ์ ์ dp[i][j]๋ ๊ธธ์ด๊ฐ i์ด๊ณ , j๋ก ์์ํ๋ ์๋ค ์ค ๊ณ๋จ ์์ ๊ฐ์๋ฅผ ๋ปํฉ๋๋ค. ์ค๋ช
์ด ๋ถ์กฑํ ๋ฏ ํด๋ณด์ฌ ์๋์ ํ ํํ๋ก ํํํด๋ณด์์ต๋๋ค. 0์ผ๋ก ์์ํ๋ ์๋ ์๋ค๊ณ ์กฐ๊ฑด์ ๋์์์ง๋ง, ์ ํ์์ ์ธ์ฐ๊ธฐ ์ํด์๋ 0์ผ๋ก ์์ํ๋ ๊ณ๋จ ์๋ ํ์ํฉ๋๋ค. dp[i][j]์๋ ์ ํ์์ ์ ์ํ ๋๋ก ๊ฐ์๊ฐ ๋ค์ด๊ฐ ๊ฒ์
๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ํฌ์ธํธ๋ dp[1][0] = 0์ด๋ผ๊ณ ํด์ ๊ฐ์๊ฐ 0์ด ์๋๋๋ค! 1๊ฐ๋ก ์ฒดํฌํด์ค์ผ ์๋ ์ ํ์์ด ์ฑ๋ฆฝํฉ๋๋ค. 2. ์ ํ์ ์ธ์ฐ๊ธฐ ์ ํ๋ฅผ ์ฐธ๊ณ ํ..
๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/11053 11053๋ฒ: ๊ฐ์ฅ ๊ธด ์ฆ๊ฐํ๋ ๋ถ๋ถ ์์ด ์์ด A๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๊ธด ์ฆ๊ฐํ๋ ๋ถ๋ถ ์์ด์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์๋ฅผ ๋ค์ด, ์์ด A = {10, 20, 10, 30, 20, 50} ์ธ ๊ฒฝ์ฐ์ ๊ฐ์ฅ ๊ธด ์ฆ๊ฐํ๋ ๋ถ๋ถ ์์ด์ A = {10, 20, 10, 30, 20, 50} ์ด www.acmicpc.net โ๏ธ ๋ฌธ์ ๐ ๋ฌธ์ ํด๊ฒฐ ๋ฌธ์ ๋ฅผ ์ดํดํ์ง ๋ชปํด์ ํค๋งธ๋ ๋ฌธ์ ์ด๋ค.. ์๋ ์ค๋ช
๊ณผ ํจ๊ป ํ์ด๋ฅผ ํด๋ณด๊ฒ ์ต๋๋ค. 1. ํ
์ด๋ธ ์ ์ 1์ฐจ์ ๋ฐฐ์ด dp[i]๋ i ๋ฒ์งธ ์๊น์ง์ ๊ฐ์ฅ ๊ธด ์ฆ๊ฐํ๋ ์์ด์ ๊ธธ์ด๋ฅผ ๋ปํฉ๋๋ค. ์์ง ์ ์ดํด๊ฐ ์๋์๋ ๋ถ๋ค์ ์ํด ์๋ ์ฝ๋๋ก ์ค๋ช
ํด๋ณด๊ฒ ์ต๋๋ค. 10 20 30 20 30 dp[0] = ..
๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/2156 2156๋ฒ: ํฌ๋์ฃผ ์์ ํจ์ฃผ๋ ํฌ๋์ฃผ ์์ํ์ ๊ฐ๋ค. ๊ทธ ๊ณณ์ ๊ฐ๋๋, ํ
์ด๋ธ ์์ ๋ค์ํ ํฌ๋์ฃผ๊ฐ ๋ค์ด์๋ ํฌ๋์ฃผ ์์ด ์ผ๋ ฌ๋ก ๋์ฌ ์์๋ค. ํจ์ฃผ๋ ํฌ๋์ฃผ ์์์ ํ๋ ค๊ณ ํ๋๋ฐ, ์ฌ๊ธฐ์๋ ๋ค์๊ณผ ๊ฐ์ ๋ ๊ฐ์ง ๊ท www.acmicpc.net โ๏ธ ๋ฌธ์ ๐ ๋ฌธ์ ํด๊ฒฐ ๋๋ํ ๋์ฌ์๋ ํฌ๋์ฃผ๋ฅผ ๋ง์
์ ๊ฐ์ฅ ๋ง์ด ๋ง์ ์์ ์ถ๋ ฅํ๋ฉด ๋๋ ๋ฌธ์ ์
๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ๋ณด๋ฉด์ ๊ณ๋จ์ค๋ฅด๊ธฐ ๋ฌธ์ ์ ์ ์ฌํ์ฌ ํด๋น ๋ฌธ์ ํ์ด ๋ฐฉ์๋๋ก ํผ๋ค๋ฉด ํ๋ฆฌ๊ฒ ๋ฉ๋๋ค. ์ด๋ฒ ๋ฌธ์ ์๋ ํฌ๋์ฃผ๋ฅผ ๋ง์์ง ์๋ ๊ฒฝ์ฐ๋ ์์ ์ ์์ผ๋ฏ๋ก, ํด๋น ๊ฒฝ์ฐ๋ ์ ์๊ฐํด์ค์ผ ํฉ๋๋ค. ๋ฌธ์ ์์ ์ฃผ์ด์ง ์์ ๋ฅผ ์ดํด๋ณด๋ฉด, ๊ฐ์ฅ ๋ง์ด ๋ง์ค ์ ์๋ ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ์ ๊ฒ์
๋๋ค. ์ฒซ ๋ฒ์งธ, ๋ ..
๐ ์ฝ๋ฉํ
์คํธ/BAEKJOON\๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/1003 1003๋ฒ: ํผ๋ณด๋์น ํจ์ ๊ฐ ํ
์คํธ ์ผ์ด์ค๋ง๋ค 0์ด ์ถ๋ ฅ๋๋ ํ์์ 1์ด ์ถ๋ ฅ๋๋ ํ์๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค. www.acmicpc.net โ๏ธ ๋ฌธ์ ๐ ๋ฌธ์ ํด๊ฒฐ 1. ํ
์ด๋ธ ์ ์ dp[i][j]์ i๊ฐ์ i ๋ฒ์งธ ํผ๋ณด๋์น ์๋ฅผ ์๋ฏธํ๊ณ , j(=0, 1)๋ ํด๋น ํผ๋ณด๋์น์์ 0์ ์ถ๋ ฅ ํ์์ 1์ ์ถ๋ ฅ ํ์๋ฅผ ๋ํ๋
๋๋ค. dp[i][0] = i ๋ฒ์งธ ํผ๋ณด๋์น ์์ 0 ์ถ๋ ฅ ํ์ dp[i][1] = i ๋ฒ์งธ ํผ๋ณด๋์น ์์ 1 ์ถ๋ ฅ ํ์ 2. ์ ํ์ ์ธ์ฐ๊ธฐ 3 ๋ฒ์งธ ํผ๋ณด๋์น ์์ ๋ํด์ ์๊ฐํด๋ณด๊ฒ ์ต๋๋ค. fibonacci(3)์ fibonacci(2) + fibonacci(1) ์
๋๋ค. fibonacci(2)๋ fibonacci(0..