๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฐ˜์‘ํ˜•

Algorithm

[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.. ๋”๋ณด๊ธฐ
[Algorithm/Java][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋” ๋งต๊ฒŒ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋” ๋งต๊ฒŒ https://programmers.co.kr/learn/courses/30/lessons/42626 ๋ฌธ์ œ์ ‘๊ทผ ์ฃผ์–ด์ง„ ์Œ์‹ ๋ฐฐ์—ด์—์„œ ์Šค์ฝ”๋นŒ์ง€์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ์€ ๋‘ ์Œ์‹์„ ์„ž์–ด์„œ ๊ธฐ์ค€์ธ K๋ฅผ ๋„˜๊ฒจ์•ผ ํ•œ๋‹ค. ๋‘ ์Œ์‹์„ ์„ž์€ ๊ฒฐ๊ณผ๋„ ๋‹ค์‹œ ์Œ์‹ ๋ฐฐ์—ด์— ์ถ”๊ฐ€ํ•ด์„œ ์—ฐ์‚ฐ์„ ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ณ„์†ํ•ด์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œํž™์„ ์‚ฌ์šฉํ–ˆ๋‹ค. Code import java.util.PriorityQueue; class Solution { public int solution(int[] scoville, int K) { PriorityQueue minHeap = new PriorityQueue(); for(int food: scoville) minHeap.add(food); int answer =.. ๋”๋ณด๊ธฐ
[Algorithm/Java][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ธฐ๋Šฅ๊ฐœ๋ฐœ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ธฐ๋Šฅ๊ฐœ๋ฐœ https://programmers.co.kr/learn/courses/30/lessons/42586 ๋ฌธ์ œ์ ‘๊ทผ ๊ฐ ๊ธฐ๋Šฅ๋งˆ๋‹ค ๋‚จ์€ ์ผ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•ด์ฃผ๊ณ , ์•ž ๊ธฐ๋Šฅ์˜ ๋‚จ์€ ์ผ์ˆ˜๋ณด๋‹ค ์ž‘์€ ์ผ์ˆ˜๋ฅผ ๊ฐ€์ง„ ๊ธฐ๋Šฅ๋งˆ๋‹ค count๋ฅผ ์ฆ๊ฐ€์‹œ์ผœ์„œ ํ•œ ๋ฐฐํฌ ๋‹จ๊ณ„์— ํฌํ•จ๋˜๋„๋ก ์ ‘๊ทผํ–ˆ๋‹ค. Code import java.util.ArrayList; class Solution { public int[] solution(int[] progresses, int[] speeds) { int[] remainDays = new int[progresses.length]; //๊ฐ ๊ธฐ๋Šฅ์„ ์™„๋ฃŒํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์ผ ์ €์žฅ for(int i = 0; i ๋”๋ณด๊ธฐ
[Algorithm/Java][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์นด์นด์˜คํ”„๋ Œ์ฆˆ ์ปฌ๋Ÿฌ๋ง๋ถ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์นด์นด์˜คํ”„๋ Œ์ฆˆ ์ปฌ๋Ÿฌ๋ง๋ถ https://programmers.co.kr/learn/courses/30/lessons/1829 ๋ฌธ์ œ์ ‘๊ทผ BFS๋ฅผ ์ด์šฉํ•ด์„œ ๊ฐ™์€ ์ƒ‰์ƒ์„ ๊ฐ€์ง„ ์ธ์ ‘ํ•œ ๋…ธ๋“œ๋“ค์„ ํƒ์ƒ‰ํ•˜๊ณ  ์˜์—ญ๊ณผ ์˜์—ญ์˜ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ขŒํ‘œ๊ฐ’๊ณผ ํ•ด๋‹น ์ขŒํ‘œ์˜ ์ƒ‰์ƒ ์ •๋ณด๋ฅผ ๊ฐ€์ง„ XYํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด์„œ Queue๋ฅผ ์ด์šฉํ•  ๋•Œ ํŽธํ•˜๋„๋ก ํ•˜์˜€๋‹ค. Code import java.util.LinkedList; import java.util.Queue; class Solution { class XY { int x; int y; int value; // ํ•ด๋‹น ์ขŒํ‘œ์˜ ๊ทธ๋ฆผ XY(){}; XY(int x, int y, int value){ this.x = x; this.y = y; this.value = value.. ๋”๋ณด๊ธฐ
[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; // ์‹ ๊ณ ํ•œ .. ๋”๋ณด๊ธฐ