java ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Algorithm/Java][๋ฐฑ์ค] 9020 ๊ณจ๋๋ฐํ์ ์ถ์ธก [BOJ] 9020 ๊ณจ๋๋ฐํ์ ์ถ์ธก https://www.acmicpc.net/problem/9020 ๋ฌธ์ ์ ๊ทผ ์ง์ n์ ๊ฐ์ฅ ์ฐจ์ด๊ฐ ์์ ๋ ์์์ ํฉ์ผ๋ก ๋ํ๋ด๋ ๋ฌธ์ ์ด๋ค. ์ฒ์์๋ n๊น์ง ์์๋ฅผ ๊ตฌํ๊ณ ๊ทธ ์์ค์์ ํฉ์ ์ํ ๋ ค๊ณ ํ๋๋ฐ, ์ฝ๋๊ฐ ๋๋ฌด ๋ณต์กํด์ง๊ณ ๋ด๊ฐ ์ผ๋๋ฐ๋ ๋ด๊ฐ ๋ชป์์๋ณด๋ ์ง๊ฒฝ์ด์๋ค... ๊ทธ๋ฆฌ๊ณ ๊ฒฐ๊ตญ์ ๋งํ๋ค ๊ทธ๋์ ์๋ผํ ์คํ ๋ค์ค์ ์ฒด๋ฅผ ์ด์ฉํด์ 10000๊น์ง์ ์์๋ฅผ ๋ชจ๋ ๊ตฌํ๋ค. ๊ทธ ๋ค์์ ๊ฐ์ฅ ์ฐจ์ด๊ฐ ์์ ๋ ์์์ ํฉ์ ๊ตฌํ๊ธฐ ์ํด์ num1์ n/2๋ถํฐ 1์ฉ ๊ฐ์ํ๊ณ num2๋ n- num1์ผ๋ก ํด์ num1,num2 ๋ชจ๋ ์์์ธ ์ฒซ๋ฒ์งธ ๊ฒฝ์ฐ๊ฐ ๋ต์ด์๋ค. ์์ฝํ์๋ฉด ์๋์ ๊ฐ๋ค. 1.์๋ผํ ์ค๋ค์ค์ ์ฒด๋ก 10000๊น์ง ์์๋ฅผ ๋ชจ๋ ๊ตฌํ๋ค. 2.1์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ์ผ๋ก n/2๋ถ.. ๋๋ณด๊ธฐ [Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ๋ ๋ฐ๋จน๊ธฐ [ํ๋ก๊ทธ๋๋จธ์ค] ๋ ๋ฐ๋จน๊ธฐ https://programmers.co.kr/learn/courses/30/lessons/12913 ๋ฌธ์ ์ ๊ทผ ์ฒ์์ ์ ๊ทผํ ๋ dfs๋ก ํ์ด์ผ ๋ ๊น? dp๋ก ํ์ด์ผ ๋ ๊น? ๊ณ ๋ฏผ์ด ๋์๋๋ฐ dfs๋ก ์ฝ๋ ์ง๋ ค๊ณ ํ๋๊น ๊ทธ๋ฅ ๋ฐ๋ก ๋งํ์ dp๋ก ์๊ฐํด๋ดค๋ค. ์ผ๋จ ์ ๊ทผ ๋ฐฉ์์ ํ์ฌ ๋ด๊ฐ ๋ฐ์ ๋ ๊ณผ ๊ฐ์ ์ด์ ์ ์ธํ๊ณ ๋ฐ๋ก ์ ํ์์ ์ต๊ณ ์ ์๋ฅผ ๊ฐ์ง ๊ณณ์ ๋ฐ์์ผ ์ต๊ณ ์ ์๋ฅผ ์ ์งํ๋ฉด์ ๋ ์ ๋ฐ์๊ฐ์ ์๋ค. ๊ทธ๋์ dp๋ฐฐ์ด์ ๊ทธ ์์น์ ํด๋นํ๋ ์ต๊ณ ์ ์๋ฅผ ์ ์ฅํ๊ณ , ๋ง์ง๋ง ํ์ค์์ ์ต๊ณ ์ ์๊ฐ ์ต์ข ๋ต์ด ๋๋ค. Code class Solution { int solution(int[][] land) { int answer = 0; int[][] dp = new int[land.lengt.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 6603 ๋ก๋ [๋ฐฑ์ค] 6603 ๋ก๋ https://www.acmicpc.net/problem/6603 ๋ฌธ์ ์ ๊ทผ ๋ฐฑํธ๋ํน ๋ฐฉ์์ผ๋ก ์ ๊ทผํ์ฌ ์ฌ๊ทํจ์๋ฅผ ์ด์ฉํ DFS๋ฅผ ์ด์ฉํ์ฌ ํ์๋ค. ๋จผ์ ์ ๋ ฅ์ ๋ฐ์ ์ซ์๋ฅผ nums์ ์ ์ฅํ๊ณ ์ฌ์ฉํ๋์ง๋ฅผ ์ ์ฅํ๊ธฐ ์ํด์ nums์ ๊ฐ์ ํฌ๊ธฐ์ boolean ๋ฐฐ์ด๋ก visited๋ฅผ ๋ง๋ค์๋ค. ๊ทธ๋ฆฌ๊ณ ์ต์ข ์ ์ผ๋ก 6๊ฐ์ ๋ก๋ ๋ฒํธ๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ๋ฐฐ์ด lotto๋ฅผ ๋ง๋ค์๋ค. ๊ฒฐ๊ณผ๊ฐ ์ค๋ฆ์ฐจ์์ผ๋ก ๋์์ผ ํด์ lotto[cnt-1]๊ณผ nums[i]๋ฅผ ๋น๊ตํด์ ํ์์ ๊ฑด๋๋ฐ๋๋ก ๋ง๋ค์๋ค. Code import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BOJ.. ๋๋ณด๊ธฐ [Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ํ๋ฆฐํฐ [ํ๋ก๊ทธ๋๋จธ์ค] ํ๋ฆฐํฐ https://programmers.co.kr/learn/courses/30/lessons/42587 ๋ฌธ์ ์ ๊ทผ ์ธ์ ๋๊ธฐ์ด์์ ์ฐ์ ์์๊ฐ ๋์ ๊ฒ ๋ถํฐ ์ธ์๋ฅผ ํด์ผํ๊ณ , location์ ์๋ ์์ ์ด ๋ช๋ฒ์งธ๋ก ์ธ์๋๋์ง๋ฅผ ๊ตฌํด์ผํ๋ค. ๊ทธ๋์ task ํด๋์ค๋ฅผ ๋ง๋ค์ด ์ฐ์ ์์์ ์ฒ์ ์ฃผ์ด์ง ์ธ๋ฑ์ค๋ฅผ ์ ์ฅํ๊ณ ์ด๋ฅผ ํ์ ์ ์ฅ์ ํ๊ณ , ๊ฐ์ฅ ํฐ ์ฐ์ ์์๋ฅผ ํํํ๊ธฐ์ํด์ ์ฐ์ ์์ ํ๋ฅผ ์ด์ฉํด์ ์ต๋ ํ์ ์ด์ฉํ๋ค. ๊ทธ๋์ ํด๋น location์ ์๋ ์์ ์ด ์ธ์๋ ๋๊น์ง while๋ฌธ์ ๋๋ฆฌ๋๋ก ํ๋ค. Code import java.util.PriorityQueue; import java.util.Queue; import java.util.Collections; import java.uti.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 14502 ์ฐ๊ตฌ์ [๋ฐฑ์ค] 14502 ์ฐ๊ตฌ์ https://www.acmicpc.net/problem/14502 ๋ฌธ์ ์ ๊ทผ ๋ชจ๋ ๋งต์ ๋๋ฉด์ ๋ฒฝ์ 3๊ฐ ์ธ์ธ ์ ์๋ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ํ์ํด์ผํ๋ค. ์ฌ๊ทํจ์๋ฅผ ์ด์ฉํด์ ๋ฒฝ์ ์ธ์ธ ์ ์๋ ์ง์ ์์ ๋ฒฝ์ ์ธ์ฐ๋ ๊ฒฝ์ฐ์ ์ธ์ฐ์ง ์๋ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ํ์ํ๋ค. ํฌ๊ฒ๋ณด๋ฉด ์๊ณ ๋ฆฌ์ฆ์ ๋ค์๊ณผ ๊ฐ๋ค, 1.๋ฒฝ์ 3๊ฐ ์ธ์ด๋ค 2.๋ฐ์ด๋ฌ์ค๋ฅผ ํผ๋จ๋ ค ๋ณธ๋ค. 3.์์ ์์ญ์ ์ผ๋ค. 4.์ด๋ฒ ๊ฒฝ์ฐ๊ฐ ์ต๋ ์์ ์์ญ์ธ์ง ํ์ธํ๋ค. 5.1~4๋ฅผ ๋ชจ๋ ๊ฒฝ์ฐ๋ฅผ ํ์ํ๋ค. Code import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import jav.. ๋๋ณด๊ธฐ [Java] ์คํธ๋ฆผ(Stream) ์คํธ๋ฆผ์ด๋? -> ๋ค์ํ ๋ฐ์ดํฐ ์์ค(์ปฌ๋ ์ , ๋ฐฐ์ด…)๋ฅผ ํ์คํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๋ค๋ฃจ๊ธฐ ์ํ ๊ฒ (JDK 1.8) -> ์ปฌ๋ ์ , ๋ฐฐ์ด์ Stream์ ํตํด์ ๋ชจ๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ค๊ฐ์ฐ์ฐ(n๋ฒ)๊ณผ ์ต์ข ์ฐ์ฐ(1๋ฒ)์ ํตํด์ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋ค. ์คํธ๋ฆผ์ด ์ ๊ณตํ๋ ๊ธฐ๋ฅ ์คํธ๋ฆผ ๋ง๋ค๊ธฐ ์ค๊ฐ ์ฐ์ฐ (0~n๋ฒ) ์ต์ข ์ฐ์ฐ (1๋ฒ) ์ค๊ฐ ์ฐ์ฐ - ์ฐ์ฐ ๊ฒฐ๊ณผ๊ฐ ์คํธ๋ฆผ์ธ ์ฐ์ฐ. ๋ฐ๋ณต์ ์ผ๋ก ์ ์ฉ๊ฐ๋ฅ ์ต์ข ์ฐ์ฐ - ์ฐ์ฐ ๊ฒฐ๊ณผ๊ฐ ์คํธ๋ฆผ์ด ์๋ ์ฐ์ฐ. ๋จ ํ๋ฒ๋ง ์ ์ฉ๊ฐ๋ฅ (์คํธ๋ฆผ์ ์์๋ฅผ ์๋ชจ)= ์ค๋ณต์ ๊ฑฐ -> 5๊ฐ ์๋ฅด๊ธฐ -> ์ ๋ ฌ -> ์ถ๋ ฅ stream.distinct().limit(5).sorted().forEach(System.out::println) ์คํธ๋ฆผ์ ํน์ง 1.์คํธ๋ฆผ์ ๋ฐ์ดํฐ ์์ค๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ธฐ๋งํ ๋ฟ.. ๋๋ณด๊ธฐ [Algorithm/Java][๋ฐฑ์ค] 1676๋ฒ ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ [๋ฐฑ์ค] 1676๋ฒ ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ https://www.acmicpc.net/problem/1676 ๋ฌธ์ ์ ๊ทผ ์ฒ์์๋ ๊ทธ๋ฅ ํฉํ ๋ฆฌ์ผ ์ฌ๊ท ํจ์๋ฅผ ์ด์ฉํด์ ๋จ์ํ๊ฒ 0์ ๊ฐ์๋ฅผ ์ ๋ ค๊ณ ํ๋ค. ๊ทผ๋ฐ ์ ๋ ฅ์ ๋ฒ์๊ฐ 500๊น์ง ์๊ณ 500!๋ long์ผ๋ก๋ ์ปค๋ฒ๊ฐ ๋์ง ์๋ ๋ฒ์์๋ค. ๊ทธ๋์ ๊ฒ์์ ํด๋ณธ ๊ฒฐ๊ณผ!@! ๋งจ ๋ค์์ ์ฐ์๋๋ 0์ ๊ฐ์๋ฅผ ์ผ๋ค๋ ๊ฒ์ 2 * 5 ์ ๊ฐฏ์๊ฐ ๋ช๊ฐ๊ฐ ์๋์ง์ ๊ฐ๋ค!!๋ผ๋ ์์ฒญ๋ ์ฌ์ค์ ์๊ฒ ๋์ด์ ์ด๋ฅผ ์ฝ๋๋ก ๊ตฌํํ์๋ค....๋๋ฐ... Code import java.util.Scanner; public class BOJ1676 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); .. ๋๋ณด๊ธฐ [Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ [ํ๋ก๊ทธ๋๋จธ์ค] 2022 KAKAO BLIND RECRUITMENT ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ https://programmers.co.kr/learn/courses/30/lessons/92334 ๋ฌธ์ ์ ๊ทผ ์ผ๋จ ๋ฌธ์ ๊ฐ ๊ณ ๋ คํด์ผ ํ ๊ฒ๋ค์ด ๋ง์์ ์ฒ์์๋ ์ ๊ณ ๋นํ ํ์, ์ ๊ณ ํ ์ฌ๋, ์๋ฆผ ๋ฉ์ผ์ ๋ฐ์ ํ์๋ฅผ ๋ชจ๋ ๋ฐ๋ก map์ ์ด์ฉํด์ 3๊ฐ์ map์ ๋ง๋ค์ด์ ์ ๊ทผํ๋๋ฐ ๋๋ฌด ๋ณต์กํด์ ๊ทธ๋ฅ 3๊ฐ์ ์ ๋ณด๋ฅผ ๊ฐ์ง User ํด๋์ค๋ฅผ ๋ง๋ค๊ฒ ๋์๋ค. ์ด๋ ๊ฒ ํ๋๊น ๋ ์๊ฐํ๊ธฐ ์ฌ์ ๊ณ ๋ด๊ฐ ๋๋ผ๊ธฐ์๋ ๋ณต์กํจ์ด ๋ง์ด ์ค์ด๋ค์๋ค. Code import java.util.HashMap; import java.util.HashSet; class Solution { class User { HashSet report; // ์ ๊ณ ํ .. ๋๋ณด๊ธฐ ์ด์ 1 2 3 4 5 6 7 8 ๋ค์