Algorithm ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Algorithm/Java][๋ฐฑ์ค] 2775๋ฒ ๋ถ๋ ํ์ฅ์ด ๋ ํ ์ผ [BOJ] 2775๋ฒ ๋ถ๋ ํ์ฅ์ด ๋ ํ ์ผ https://www.acmicpc.net/problem/2775 ๋ฌธ์ ์ ๊ทผ ๋ฐฑ์ค์์ ์์ ๋ก ์ค ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ํ๋์ฉ ์ฐ๋ค๋ณด๋ฉด ๊ท์น์ด ๋ณด์ด๊ฒ ๋๋ค. 000 -> 0 001 -> 1 002 -> 2 003 -> 3 100 -> 0 101 -> 1 102 -> 3 103 -> 6 200 -> 0 201 -> 1 202 -> 4 203 -> 10 ์ด๋ 103ํธ์๋ 003ํธ์ 102ํธ๋ฅผ ํฉ์น ๊ฐ์ด ์๊ณ , 203ํธ์๋ 103ํธ์ 202ํธ๋ฅผ ํฉ์น ๊ฐ์ด ์๋ค. ์ด๋ฅผ ์ ํ์์ผ๋ก ๋ฐ๊ฟ๋ณด๋ฉด (k0n)ํธ = k-10nํธ + k0n-1ํธ ์ฝ๋๋ก ๋ฐ๊ฟ๋ณด๋ฉด dp[floor][room] = dp[foor-1][n] + dp[floor][n-1]์ด ๋๋ค. ์ด๋ฅผ ์ฝ๋๋ก ๋ฐ๊พธ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค. Co.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 14226๋ฒ ์ด๋ชจํฐ์ฝ [BOJ] 14226๋ฒ ์ด๋ชจํฐ์ฝ https://www.acmicpc.net/problem/14226 ๋ฌธ์ ์ ๊ทผ ํ๋ฉด์ ์๋ ์ด๋ชจํฐ์ฝ์ S๊ฐ ๋ง๋๋ ์ต์ ์๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ํ๋ฉด์ ์๋ ์ด๋ชจํฐ์ฝ ๊ฐ์์ ํด๋ฆฝ๋ณด๋์ ์๋ ์ด๋ชจํฐ์ฝ ๊ฐ์ ๊ทธ๋ฆฌ๊ณ ์๊ฐ ์ ๋ณด๋ฅผ ์ ์ฅํ ์ ์๋ Emoticon ํด๋์ค๋ฅผ ๋ง๋ค๊ณ isVisited ๋ฐฐ์ด์ ํ๋ฉด์ ์๋ ์ด๋ชจํฐ์ฝ ์์ ํด๋ฆฝ๋ณด๋์ ์๋ ์ด๋ชจํฐ์ฝ ์๋ฅผ ๊ณ ๋ คํ ์ ์๋๋ก 2์ฐจ์ ๋ฐฐ์ด๋ก ๋ง๋ค์๋ค. ๊ทธ๋ฆฌ๊ณ BFS๋ฅผ ์ด์ฉํด์ ํ๋ฉด์ ์๋ ์ด๋ชจํฐ์ฝ์ ํด๋ฆฝ๋ณด๋์ ์ ์ฅํ๋ ๊ฒฝ์ฐ, ํ๋ฉด์ ์๋ ์ด๋ชจํฐ์ฝ ํ๊ฐ๋ฅผ ์ ๊ฑฐํ๋ ๊ฒฝ์ฐ, ํด๋ฆฝ๋ณด๋์ ์๋ ์ด๋ชจํฐ์ฝ์ ๋ถ์ฌ๋ฃ๋ ๊ฒฝ์ฐ ์ธ๊ฐ์ง๋ฅผ ๊ณ ๋ คํด์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ์ด์ฐจ์ ๋ฐฐ์ด๋ก ํด๊ฒฐํ ์๊ฐ์ ํ์ง ๋ชปํด์ ํธ๋๋ฐ ๊ฝค๋ ์ค๋๊ฑธ๋ ธ๋ค...๊ทผ๋ฐ .. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1916๋ฒ ์ต์๋น์ฉ ๊ตฌํ๊ธฐ [BOJ] 1916๋ฒ ์ต์๋น์ฉ ๊ตฌํ๊ธฐ https://www.acmicpc.net/problem/1916 ๋ฌธ์ ์ ๊ทผ ์์ ๊ฐ์ค์น๋ฅผ ๊ฐ์ง ๊ฐ์ ์ผ๋ก ์ด๋ฃจ์ด์ง ๊ทธ๋ํ์์ ์ต๋จ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๋ฌธ์ ์ฌ์ ๋ค์ต์คํธ๋ผ์ ๋ฒจ๋งํฌ๋ ์๊ณ ๋ฆฌ์ฆ 2๊ฐ๋ฅผ ๋ชจ๋ ์ ์ฉํด์ ๊ตฌํํ๋ค. ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ์ฐ์ ์์ ํ๋ฅผ ์ด์ฉํด์ ์๊ฐ๋ณต์ก๋๋ฅผ ์ค์๊ณ , ๋ค์ต์คํธ๋ผ์ ๋ฒจ๋งํฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ํฌ์คํธ์ ์ ๋ฆฌํ๋ค. [์๊ณ ๋ฆฌ์ฆ] ๋ค์ต์คํธ๋ผ & ๋ฒจ๋งํฌ๋ Code ๋ค์ต์คํธ๋ผ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; class Node implements Comparable { int to; int .. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1806๋ฒ ๋ถ๋ถํฉ [BOJ] 1806๋ฒ ๋ถ๋ถํฉ https://www.acmicpc.net/problem/1806 ๋ฌธ์ ์ ๊ทผ ํฌ ํฌ์ธํฐ๋ฅผ ์ด์ฉํด์ ๋ฌธ์ ๋ฅผ ํ์๋ค. deque์ ์ด๋ถ ํ์์ ์ด์ฉํด์๋ ํ ์ ์๋ค๊ณ ํ๋๋ฐ ๋ถ๋ฅ๊ฐ ํฌ ํฌ์ธํฐ๋ผ์ ํฌ ํฌ์ธํฐ๋ฅผ ์ฌ์ฉํด์ ํ์๋ค. start์ end์ธ ๋ ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๊ณ sum์ด t(๋ชฉํ ๊ฐ)๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ผ๋ฉด end๋ฅผ +1ํด์ ํ๊ฐ๋ฅผ ๋ ๋ํ๋๋ก ํ๊ณ , sum์ด t(๋ชฉํ ๊ฐ)๋ณด๋ค ํฌ๋ฉด start๋ฅผ +1 ํด์ ํฉ์์ ํ๊ฐ๋ฅผ ๋นผ์ ๋ชฉํ ๊ฐ์ ์ ๊ทผํ๋๋ก ํ๋ค. ํฌ ํฌ์ธํฐ๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด O(N)์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๊ฒ ๋๋ ์ฅ์ ์ด ์๋ค. Code import java.io.BufferedReader; import java.io.IOException; import java.io.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1700๋ฒ ๋ฉํฐํญ ์ค์ผ์ค๋ง [BOJ] 1700๋ฒ ๋ฉํฐํญ ์ค์ผ์ค๋ง https://www.acmicpc.net/problem/1700 ๋ฌธ์ ์ ๊ทผ ์์ ์ ์ด์์ฒด์ ์๊ฐ์ ๋ฐฐ์ ๋ ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋น์ทํด์ ์ฝ๊ฒ ํ ์ ์์๋ค. ๋ฉํฐํญ์ ์๋ฆฌ๊ฐ ์๊ฑฐ๋, ์ด๋ฏธ ๊ฝํ์์ ๋๋ ๊ณ ๋ คํ ๊ฒ ์์ด ๊ทธ๋ฅ ๊ฝ๊ฑฐ๋ ๋์ด๊ฐ๋ฉด ๋์ง๋ง ์๋ฆฌ๊ฐ ์์๋ ๊ณ ๋ คํด์ผ ๋ ๊ฒฝ์ฐ์ ์๊ฐ ์๋ค. ๊ฒฝ์ฐ์ ์๋ฅผ ์ ๋ฆฌํด ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค. ๋ฉํฐํญ์ ์๋ฆฌ๊ฐ ์๋ ๊ฒฝ์ฐ ์ด๋ฏธ ๋ฉํฐํญ์ ๊ฝํ ์๋ ๊ฒฝ์ฐ ๋ฉํฐํญ์ ์๋ฆฌ๊ฐ ์๋ ๊ฒฝ์ฐ 3.1. ์ฌ์ฉํ์ง ์์ ์ ์๊ธฐ๊ธฐ๊ฐ ๊ฝํ ์๋ ๊ฒฝ์ฐ 3.2. ๋ชจ๋ ์ ์๊ธฐ๊ธฐ๊ฐ ๋ค์ ์ฌ์ฉํ ์ ์๊ธฐ๊ธฐ์ธ ๊ฒฝ์ฐ ์ฌ์ฉํ์ง ์์ ์ ์๊ธฐ๊ธฐ๊ฐ ๊ฝํ ์์ผ๋ฉด ๊ทธ ์ ์๊ธฐ๊ธฐ๋ฅผ ์ ๊ฑฐํ๊ณ ์๋ก์ด ์ ์๊ธฐ๊ธฐ๋ฅผ ๊ฝ์ผ๋ฉด ํด๊ฒฐ๋๋ค. ๋ชจ๋ ์ ์๊ธฐ๊ธฐ๊ฐ ๋ค์ ์ฌ์ฉํ ์ ์๊ธฐ๊ธฐ์ธ ๊ฒฝ์ฐ ์ฐ์ ์์๋ฅผ.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1062๋ฒ ๊ฐ๋ฅด์นจ [BOJ] 1062๋ฒ ๊ฐ๋ฅด์นจ https://www.acmicpc.net/problem/1062 ๋ฌธ์ ์ ๊ทผ ๋ฐฑํธ๋ํน์ ์ด์ฉํด์ ๋ชจ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ํ์ํด๋ณด๋ ๋ฌธ์ ์๋ค. ์๊ฐ ๋ณต์ก๋๋ฅผ ์ค์ด๊ธฐ ์ํด์ ๋ชจ๋ ๋จ์ด๊ฐ ํฌํจํ๋ anta, tica ์ ํฌํจ๋ 5๊ฐ์ ๋จ์ด๋ฅผ ํ์ ๋จ์ด๋ก ํฌํจ์ํค๊ณ , ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊ฟ์ฃผ์ด์ ํ์ํด์ผ ํ๋ ๋จ์ด์ ๊ธธ์ด๋ฅผ ์ค์๊ณ , ๋ฐฐ์ธ ์ ์๋ ๋จ์ด๊ฐ 5๊ฐ ๋ณด๋ค ์ ์๋ 0, 26๊ฐ ์ผ ๋ ๋ชจ๋ ๋จ์ด๋ฅผ ๋ฐฐ์ธ ์ ์์ผ๋ฏ๋ก n์ ์ถ๋ ฅํ๋ค. ๋ฐฑํธ๋ํน์ ํ ๋๋ a~z๊น์ง ์์ฐจ์ ์ผ๋ก ํ์ตํ๊ธฐ ๋๋ฌธ์ ์์ ์ธ๋ฑ์ค๋ฅผ ๋งค๊ฐ๋ณ์๋ก ์ถ๊ฐํด์ ์ด๋ฏธ ์ง๋๊ฐ ๊ณณ์ ํ์ํ์ง ์๋๋ก ํ๋ค. Code import java.io.BufferedReader; import java.io.IOException; import jav.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 2504๋ฒ ๊ดํธ์ ๊ฐ [BOJ] 2504๋ฒ ๊ดํธ์ ๊ฐ https://www.acmicpc.net/problem/2504 ๋ฌธ์ ์ ๊ทผ Stack์ ์ด์ฉํด์ ์ด๋ฆฐ ๊ดํธ๋ฅผ ์ ์ฅํ๊ณ , ๊ดํธ๊ฐ ๋ซํ ๋ X๊ฐ์ ๋ค์ ์คํ์ ์ ์ฅํ๋ค. ๊ดํธ ์์ ์ซ์๊ฐ ์์ผ๋ฉด ๊ทธ ์ซ์๋ค์ ๋ค ๋ํด์ ํด๋น ๊ดํธ ๊ฐ์ ๊ณฑํด์ฃผ์๋ค. ๊ทธ๋ฆฌ๊ณ ์คํ์ Character ์๋ฃํ์ผ๋ก ํ๋ฉด ๊ดํธ์ ์ซ์๋ฅผ ๊ตฌ๋ถํ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์, String์ผ๋ก ํด์ ์ด ๊ฒฝ์ฐ๋ฅผ ํด๊ฒฐํ๋ค. ์ฝ๋๊ฐ ๋๋ฌด ๋ณต์กํ๊ณ ์ฌ๋ฐ๋ฅธ ๊ดํธ๊ฐ ์๋๊ฒ์ ๊ฒ์ฌํ๊ธฐ๊ฐ ๊น๋ค๋ก์ ๋ค... Code import java.util.Scanner; import java.util.Stack; public class BOJ2504 { public static void main(String[] args) { Scanner sc .. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1987๋ฒ ์ํ๋ฒณ [BOJ] 1987๋ฒ ์ํ๋ฒณ https://www.acmicpc.net/problem/1987 ๋ฌธ์ ์ ๊ทผ ๊ฐ๋ก R, ์ธ๋ก C๋ก ๋ ๋ณด๋์ ๋๋ฌธ์ ์ํ๋ฒณ์ด ์ ํ์๊ณ , ๊ฐ์ฅ ์ผ์ชฝ ์๋ถํฐ ์ํ๋ฒณ ๋น ํ๋ฒ์ฉ๋ง ๋ฐฉ๋ฌธํด์ ๊ฐ์ฅ ๋ฉ๋ฆฌ ๊ฐ ์ ์๋ ๊ธธ์ด๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ์ฒ์์๋ ์๋ฌด์๊ฐ ์์ด bfs๋ก ํ๋ค๊ฐ ์๊ฐํด๋ณด๋๊น dfs๊ฐ ๋ ๋ง๋ ๊ฒ ๊ฐ์์ ๋ฐฉํฅ์ ํ์๋ค. ์ฒ์์๋ ๋ณด๋์ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ฅผ ์ ์ฅํ๋ isVisited์ ์ํ๋ฒณ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ฅผ ์ ์ฅํ๋ alphabetVisited๋ฅผ ์ฌ์ฉํ๋ ค ํ๋๋ฐ, ์๊ฐํด๋ณด๋๊น ํ๋ฒ ๋ฐฉ๋ฌธํ ์ํ๋ฒณ์ ๋ฐฉ๋ฌธํ์ง ๋ชปํ๋๊น ๋ณด๋์ ๋ฐฉ๋ฌธ์ฌ๋ถ๋ฅผ ์ ์ฅํ ํ์๊ฐ ์๊ณ , ๊ฒฝ๋ก๋ฅผ String์ผ๋ก ๊ณ์ ์ถ๊ฐํด๊ฐ๋ฉด์ ํ๋ฉด ์ํ๋ฒณ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ ๋ฐ๋ก ์ ์ฅํ์ง ์์๋ ๋ ๊ฒ ๊ฐ์์ dfs์ ๊ฐ๋ ค๋ x,y์ ์ง๊ธ.. ๋๋ณด๊ธฐ ์ด์ 1 2 3 4 ยทยทยท 8 ๋ค์