java 542

[Baekjoon] 3986_์ข‹์€ ๋‹จ์–ด

Silver IV๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/3986) ๋ฌธ์ œ ํ’€์ด  Stack์„ ์‚ฌ์šฉํ•ด์„œ A๋ผ๋ฆฌ ๋˜๋Š” B๋ผ๋ฆฌ ์Œ์„ ์ง€์–ด ์—ฐ๋‹ฌ์•„ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Stack;public class _3986_ { // ์ข‹์€ ๋‹จ์–ด public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.i..

[Baekjoon] 2812_ํฌ๊ฒŒ ๋งŒ๋“ค๊ธฐ

Gold III๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/2812) ๋ฌธ์ œ ํ’€์ด  Stack์„ ์‚ฌ์šฉํ•ด์„œ ๋‹ค์Œ ์ˆซ์ž๊ฐ€ ํ˜„์žฌ ์ˆซ์ž๋ณด๋‹ค ํฌ๋‹ค๋ฉด ํ˜„์žฌ ์ˆซ์ž๋ฅผ stack์—์„œ pop ํ•ด์ค€๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์˜ˆ์ œ์—์„œ ์ฃผ์–ด์ง„ ์ž…๋ ฅ์ด๋ผ๋ฉด4 21924์œ„์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ฒ˜์Œ์— 1์„ stack์— ๋„ฃ์–ด์ค€๋‹ค. ๊ทธ๋‹ค์Œ ๊ฐ’์ด 9์ผ ๋•Œ stack์— ๋“ค์–ด์žˆ๋Š” ๊ฐ’์ด 1 ์ด๋ฏ€๋กœ 1์„ ๋นผ๊ณ  9๋ฅผ ๋„ฃ์œผ๋ฉด ๋” ํฐ ๊ฐ’์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. 2๋Š” 9๋ณด๋‹ค ์ž‘์œผ๋ฏ€๋กœ stack์— ๋„ฃ์–ด์ค€๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ 4๊ฐ€ ๋“ค์–ด์˜ฌ ๋•Œ 2๋ณด๋‹ค ํฌ๋ฏ€๋กœ 2๋ฅผ ๋นผ์ฃผ๊ณ  4๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOExc..

[Baekjoon] 2841_์™ธ๊ณ„์ธ์˜ ๊ธฐํƒ€ ์—ฐ์ฃผ

Silver I๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/2841) ๋ฌธ์ œ ํ’€์ด  ๊ธฐํƒ€ ์ค„๋งˆ๋‹ค stack์„ ๋งŒ๋“ค์–ด์„œ ๋ˆŒ๋Ÿฌ์•ผ ํ•˜๋Š” ํ”„๋ ›๋ณด๋‹ค ์ „์— ๋ˆ„๋ฅธ ํ”„๋ › ๋ฒˆํ˜ธ๊ฐ€ ํฐ์ง€ ์ž‘์€์ง€์— ๋”ฐ๋ผ ํŒ๋‹จํ•˜์—ฌ  ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Stack;import java.util.StringTokenizer;public class _2841_ { // ์™ธ๊ณ„์ธ์˜ ๊ธฐํƒ€ ์—ฐ์ฃผ public static void main(String[] args)..

[Baekjoon] 23294_์›น ๋ธŒ๋ผ์šฐ์ € 1

Gold IV๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/23294) ๋ฌธ์ œ ํ’€์ด  Deque 2๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋’ค๋กœ ๊ฐ€๊ธฐ ๊ณต๊ฐ„๊ณผ ์•ž์œผ๋กœ ๊ฐ€๊ธฐ ๊ณต๊ฐ„์„ ๋‚˜๋ˆ„์–ด ๊ตฌํ˜„ํ–ˆ๋‹ค.๊ฐ ์ž‘์—…์„ ์‹คํ–‰ํ•  ๋•Œ๋งˆ๋‹ค ์บ์‹œ ์šฉ๋Ÿ‰๋„ ๋’ค๋กœ ๊ฐ€๊ธฐ ๊ณต๊ฐ„๊ณผ ์•ž์œผ๋กœ ๊ฐ€๊ธฐ ๊ณต๊ฐ„์„ ๋‚˜๋ˆ„์–ด ๊ณ„์‚ฐํ•ด ์ฃผ์—ˆ๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.util.ArrayDeque;import java.util.Deque;import java.u..

[Baekjoon] 28279_๋ฑ 2

Silver IV๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/28279) ๋ฌธ์ œ ํ’€์ด  Deque๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.util.ArrayDeque;import java.util.Deque;import java.util.StringTokenizer;public class _28279_ { // ๋ฑ 2 public static void main(St..

[Baekjoon] 2617_๊ตฌ์Šฌ ์ฐพ๊ธฐ

Gold IV๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/2617) ๋ฌธ์ œ ํ’€์ด  ArrayList 2๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ด์„œ n๋ฒˆ ๊ตฌ์Šฌ๋ณด๋‹ค ๋ฌด๊ฑฐ์šด ๊ตฌ์Šฌ ๋ฒˆํ˜ธ๋ฅผ ์ €์žฅํ•˜๊ณ , n๋ฒˆ ๊ตฌ์Šฌ๋ณด๋‹ค ๊ฐ€๋ฒผ์šด ๊ตฌ์Šฌ ๋ฒˆํ˜ธ๋ฅผ ์ €์žฅํ•œ๋‹ค.๊ทธ ํ›„ n๋ฒˆ ๊ตฌ์Šฌ๋ณด๋‹ค ๋ฌด๊ฑฐ์šด ๊ตฌ์Šฌ์ด ๋ช‡ ๊ฐœ์ธ์ง€, ๊ฐ€๋ฒผ์šด ๊ตฌ์Šฌ์ด ๋ช‡ ๊ฐœ์ธ์ง€ dfs๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ตฌํ•œ๋‹ค. ๊ฐ ๊ฐœ์ˆ˜๊ฐ€ ์ด ๊ตฌ์Šฌ์˜ ๊ฐœ์ˆ˜์˜ ์ ˆ๋ฐ˜์ด ๋„˜์œผ๋ฉด ๋ฌด๊ฒŒ๊ฐ€ ์ค‘๊ฐ„์ด ๋  ๊ฐ€๋Šฅ์„ฑ์ด ์—†๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.StringTokenizer;pu..

[Baekjoon] 17616_๋“ฑ์ˆ˜ ์ฐพ๊ธฐ

Gold III๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/17616) ๋ฌธ์ œ ํ’€์ด  ์ž…๋ ฅ์„ ๋ฐ›์„ ๋•Œ ArrayList 2๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ž์‹ ๋ณด๋‹ค ๋” ์ž˜ํ•œ ์‚ฌ๋žŒ๊ณผ ์ž์‹ ๋ณด๋‹ค ๋” ๋ชปํ•œ ์‚ฌ๋žŒ์„ ์ €์žฅํ•œ๋‹ค.dfs๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ž์‹ ๋ณด๋‹ค ์ž˜ ํ•œ ์‚ฌ๋žŒ์˜ ์ˆ˜์™€ ์ž์‹ ๋ณด๋‹ค ๋ชปํ•œ ์‚ฌ๋žŒ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•ด ๊ฐ€๋Šฅํ•œ ๊ฐ€์žฅ ๋†’์€ ๋“ฑ์ˆ˜์™€ ๊ฐ€๋Šฅํ•œ ๊ฐ€์žฅ ๋‚ฎ์€ ๋“ฑ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค.   my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.util.ArrayLis..

[Baekjoon] 12764_์‹ธ์ง€๋ฐฉ์— ๊ฐ„ ์ค€ํ•˜

Gold III๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/12764) ๋ฌธ์ œ ํ’€์ด  ์šฐ์„ ์ˆœ์œ„ ํ 2๊ฐœ์™€ ArrayList, boolean ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค. ์šฐ์„ ์ˆœ์œ„ ํ a์—๋Š” ์ปดํ“จํ„ฐ ์ด์šฉ ์‹œ์ž‘ ์‹œ๊ฐ„๊ณผ ์ข…๋ฃŒ ์‹œ๊ฐ„์„ ์ž…๋ ฅ๋ฐ›์•„ ์ €์žฅํ•˜์—ฌ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ด์šฉ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ๋น ๋ฅธ ์ˆœ์œผ๋กœ, ์‹œ์ž‘ ์‹œ๊ฐ„์ด ๊ฐ™๋‹ค๋ฉด ์ข…๋ฃŒ ์‹œ๊ฐ„์ด ๋น ๋ฅธ ์ˆœ์œผ๋กœ ์ •๋ ฌํ–ˆ๋‹ค.์šฐ์„ ์ˆœ์œ„ ํ b์—๋Š” ์ปดํ“จํ„ฐ ์ข…๋ฃŒ ์‹œ๊ฐ„๊ณผ ์ปดํ“จํ„ฐ ๋ฒˆํ˜ธ๋ฅผ ์ €์žฅํ•˜์—ฌ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ข…๋ฃŒ ์‹œ๊ฐ„์ด ๋น ๋ฅธ ์ˆœ์œผ๋กœ, ์ข…๋ฃŒ ์‹œ๊ฐ„์ด ๊ฐ™๋‹ค๋ฉด ๋ฒˆํ˜ธ๊ฐ€ ๋น ๋ฅธ ์ˆœ์œผ๋กœ ์ •๋ ฌํ–ˆ๋‹ค. ๋ฌธ์ œ์—์„œ ๋น„์–ด์žˆ๋Š” ์ž๋ฆฌ ์ค‘์—์„œ ๋ฒˆํ˜ธ๊ฐ€ ๊ฐ€์žฅ ์ž‘์€ ์ž๋ฆฌ์— ์•‰๋Š” ๊ฒƒ์ด ๊ทœ์น™์ด๋ผ ํ–ˆ์œผ๋ฏ€๋กœ ๋จผ์ € ๋‹ค์Œ ์‚ฌ๋žŒ์ด ๋“ค์–ด์™”์„ ๋•Œ ์ข…๋ฃŒ๋˜๋Š” ์ปดํ“จํ„ฐ๋“ค์„ ์šฐ์„ ์ˆœ์œ„ ํ b์—์„œ poll ํ•ด์ค€๋‹ค. ๊ทธ ํ›„์— ๋น„์–ด์žˆ๋Š” ์ž๋ฆฌ..

[Baekjoon] 18917_์ˆ˜์—ด๊ณผ ์ฟผ๋ฆฌ 38

Silver III๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/18917) ๋ฌธ์ œ ํ’€์ด  ๋ฌธ์ œ์—์„œ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•ด์„œ ๋‹น์—ฐํ•˜๊ฒŒ ArrayList๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์—ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ตœ๋Œ€ 500000๋ฒˆ์˜ add์™€ remove๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๋˜ํ•œ, sum๊ณผ xor ์—ฐ์‚ฐ์„ ๊ฐ’์ด ๋“ค์–ด์˜ค๊ณ  ๋‚˜๊ฐˆ ๋•Œ๋งˆ๋‹ค ๊ณ„์‚ฐํ•ด ์ฃผ๋ฉด ๋”ฐ๋กœ ๊ฐ’๋“ค์„ ์ €์žฅํ•  ๊ณต๊ฐ„์ด ํ•„์š” ์—†์—ˆ๋‹ค.  * 1000000000์„ ์ตœ๋Œ€ 500000๋ฒˆ ๋”ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด Integer ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋ฏ€๋กœ long์„ ์จ์•ผ ํ•œ๋‹ค.  ์‹œ๊ฐ„์ดˆ๊ณผ ์ฝ”๋“œ (Java)๋”๋ณด๊ธฐ์ฒ˜์Œ์—๋Š” ๊ฐ’์ด ์ œ๊ฑฐ๋  ๋•Œ xor ์—ฐ์‚ฐ์„ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋Š”์ง€ ๋ชฐ๋ผ xor ์—ฐ์‚ฐ์„ ์œ„ํ•ด 4๊ฐ€ ์ž…๋ ฅ๋  ๋•Œ๋งˆ๋‹ค ArrayList ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํƒ์ƒ‰ํ•˜๋ฉฐ ์—ฐ์‚ฐ..

[JAVA] PriorityQueue

๐Ÿ’กPriorityQueue // importimport java.util.PriorityQueue; //์„ ์–ธ ๋ฐ ์ดˆ๊ธฐํ™”PriorityQueue queue=new PriorityQueue();PriorityQueue queue = new PriorityQueue(new Comparator() { @Override public int compare(int[] o1, int[] o2) { if (o1[0] == o2[0]) return o2[1] - o1[1]; // ๋‚ด๋ฆฝ์ฐจ์ˆœ return o1[0] - o2[0]; // ์˜ค๋ฆ„์ฐจ์ˆœ }}); // ๊ฐ’ ์ถ”๊ฐ€queue.add();// ๊ฐ’ ์ œ๊ฑฐqueue.poll();