๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

Algorithm242

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)์‡ ๋ง‰๋Œ€๊ธฐ(์Šคํƒ/ํ) https://programmers.co.kr/learn/courses/30/lessons/42585 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ import java.util.*; class Solution { public int solution(String arr) { int answer = 0; Stack s = new Stack(); for(int i=0; i ์Šคํƒ์— ์Œ“๊ธฐ if(arr.charAt(i) == '(') s.push('('); // ํ˜„์žฌ ๊ฐ’์ด ')' ์ธ ๊ฒฝ์šฐ -> ์ด์ „๊ฐ’์ด '('์ธ์ง€ ')'์ธ์ง€ ํŒ๋‹จ. else{ s.pop(); .. 2020. 3. 25.
[๋ฐฑ์ค€] 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ(๊ตฌํ˜„, ํ) https://www.acmicpc.net/problem/1966 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ ๋ฌธ์ œ ์—ฌ๋Ÿฌ๋ถ„๋„ ์•Œ๋‹ค์‹œํ”ผ ์—ฌ๋Ÿฌ๋ถ„์˜ ํ”„๋ฆฐํ„ฐ ๊ธฐ๊ธฐ๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ์ธ์‡„ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์„œ๋ฅผ ์ธ์‡„ ๋ช…๋ น์„ ๋ฐ›์€ ‘์ˆœ์„œ๋Œ€๋กœ’, ์ฆ‰ ๋จผ์ € ์š”์ฒญ๋œ ๊ฒƒ์„ ๋จผ์ € ์ธ์‡„ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฌธ์„œ๊ฐ€ ์Œ“์ธ๋‹ค๋ฉด Queue ์ž๋ฃŒ๊ตฌ์กฐ์— ์Œ“์—ฌ์„œ FIFO - First In First Out - ์— ๋”ฐ๋ผ ์ธ์‡„๊ฐ€ ๋˜๊ฒŒ ๋œ๋‹ค. ํ•˜์ง€๋งŒ ์ƒ๊ทผ์ด๋Š” ์ƒˆ๋กœ์šด ํ”„๋ฆฐํ„ฐ๊ธฐ ๋‚ด๋ถ€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜์˜€๋Š”๋ฐ, ์ด ํ”„๋ฆฐํ„ฐ๊ธฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ธ์‡„๋ฅผ ํ•˜๊ฒŒ ๋œ๋‹ค. ํ˜„์žฌ Queue์˜ ๊ฐ€์žฅ ์•ž์— ์žˆ๋Š” ๋ฌธ์„œ์˜ ‘์ค‘์š”๋„’๋ฅผ www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.i.. 2020. 3. 24.
[Codeforces] 1191A: Tokitsukaze and Enhancement https://codeforces.com/problemset/problem/1191/A Problem - 1191A - Codeforces codeforces.com ์ฝ”๋“œ import java.util.Scanner; public class A1191 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int x = scan.nextInt(); if(x%4 == 0) System.out.println("1 A"); else if(x%4 == 1) System.out.println("0 A"); else if(x%4 == 2) System.out.println("1 B"); else System.out.print.. 2020. 3. 24.
[๋ฐฑ์ค€] 13904๋ฒˆ: ๊ณผ์ œ(๊ทธ๋ฆฌ๋””) https://www.acmicpc.net/problem/13904 13904๋ฒˆ: ๊ณผ์ œ ์˜ˆ์ œ์—์„œ ๋‹ค์„ฏ ๋ฒˆ์งธ, ๋„ค ๋ฒˆ์งธ, ๋‘ ๋ฒˆ์งธ, ์ฒซ ๋ฒˆ์งธ, ์ผ๊ณฑ ๋ฒˆ์งธ ๊ณผ์ œ ์ˆœ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๊ณ , ์„ธ ๋ฒˆ์งธ, ์—ฌ์„ฏ ๋ฒˆ์งธ ๊ณผ์ œ๋ฅผ ํฌ๊ธฐํ•˜๋ฉด 185์ ์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int N = scan.nextInt(); int[][] work = new int[N][2]; int maxScor.. 2020. 3. 22.
[Codeforces] 1300A: Non-zero https://codeforces.com/problemset/problem/1300/A Problem - 1300A - Codeforces codeforces.com ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int t = Integer.parse.. 2020. 3. 21.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)๋” ๋งต๊ฒŒ(Heap) https://programmers.co.kr/learn/courses/30/lessons/42626 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ import java.util.*; class Solution { public int solution(int[] scoville, int K) { int answer = 0; Queue pq = new PriorityQueue(); // ์šฐ์„ ์ˆœ์œ„ ํ์— ๋ฐฐ์—ด๊ฐ’ ์ €์žฅ for(int i : scoville) pq.offer(i); // ์šฐ์„ ์ˆœ์œ„ ํ์— ์Šค์ฝ”๋นŒ์ง€์ˆ˜ K๋ณด๋‹ค ๊ฐ’์ด ์ž‘์„๋•Œ ๋ฐ˜๋ณต while(pq.peek.. 2020. 3. 20.
[๋ฐฑ์ค€] 3085๋ฒˆ: ์‚ฌํƒ• ๊ฒŒ์ž„(์™„์ „ ํƒ์ƒ‰) https://www.acmicpc.net/problem/3085 3085๋ฒˆ: ์‚ฌํƒ• ๊ฒŒ์ž„ ๋ฌธ์ œ ์ƒ๊ทผ์ด๋Š” ์–ด๋ ธ์„ ์ ์— "๋ด„๋ณด๋‹ˆ (Bomboni)" ๊ฒŒ์ž„์„ ์ฆ๊ฒจํ–ˆ๋‹ค. ๊ฐ€์žฅ ์ฒ˜์Œ์— N×Nํฌ๊ธฐ์— ์‚ฌํƒ•์„ ์ฑ„์›Œ ๋†“๋Š”๋‹ค. ์‚ฌํƒ•์˜ ์ƒ‰์€ ๋ชจ๋‘ ๊ฐ™์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ƒ๊ทผ์ด๋Š” ์‚ฌํƒ•์˜ ์ƒ‰์ด ๋‹ค๋ฅธ ์ธ์ ‘ํ•œ ๋‘ ์นธ์„ ๊ณ ๋ฅธ๋‹ค. ๊ทธ ๋‹ค์Œ ๊ณ ๋ฅธ ์นธ์— ๋“ค์–ด์žˆ๋Š” ์‚ฌํƒ•์„ ์„œ๋กœ ๊ตํ™˜ํ•œ๋‹ค. ์ด์ œ, ๋ชจ๋‘ ๊ฐ™์€ ์ƒ‰์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š” ๊ฐ€์žฅ ๊ธด ์—ฐ์† ๋ถ€๋ถ„(ํ–‰ ๋˜๋Š” ์—ด)์„ ๊ณ ๋ฅธ ๋‹ค์Œ ๊ทธ ์‚ฌํƒ•์„ ๋ชจ๋‘ ๋จน๋Š”๋‹ค. ์‚ฌํƒ•์ด ์ฑ„์›Œ์ง„ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ƒ๊ทผ์ด๊ฐ€ ๋จน์„ ์ˆ˜ ์žˆ๋Š” ์‚ฌํƒ•์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜ www.acmicpc.net ์ฝ”๋“œ import java.util.Arrays; import java.util.Scanner; public class Main { p.. 2020. 3. 19.
[๋ฐฑ์ค€] 1417๋ฒˆ: ๊ตญํšŒ์˜์› ์„ ๊ฑฐ(์™„์ „ ํƒ์ƒ‰) https://www.acmicpc.net/problem/1417 1417๋ฒˆ: ๊ตญํšŒ์˜์› ์„ ๊ฑฐ ์ฒซ์งธ ์ค„์— ํ›„๋ณด์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๊ธฐํ˜ธ 1๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ˆ˜, ๊ธฐํ˜ธ 2๋ฒˆ์„ ์ฐ์œผ๋ ค๊ณ  ํ•˜๋Š” ์ˆ˜, ์ด๋ ‡๊ฒŒ ์ด N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ์ž…๋ ฅ์ด ๋“ค์–ด์˜จ๋‹ค. N์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๊ณ , ๋“ํ‘œ์ˆ˜๋Š” 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static void main(String[] args).. 2020. 3. 19.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)์Šคํ‚ฌํŠธ๋ฆฌ https://programmers.co.kr/learn/courses/30/lessons/49993 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ class Solution { public static int solution(String skill, String[] skill_trees) { int answer = 0; for(int i=0; i C๋ฅผ๋ฐฐ์šฐ๊ณ  B๋ฅผ ๋ฐฐ์›Œ์•ผํ•จ */ else if(index < skill.indexOf(s)){ check = false; break; } } if(check)answer ++; } return answer;.. 2020. 3. 19.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - (Level2)์†Œ์ˆ˜ ๋งŒ๋“ค๊ธฐ https://programmers.co.kr/learn/courses/30/lessons/12977 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ์ฝ”๋“œ class Solution { public static boolean isPrime(int num){ if(num == 2) return true; for(int i=2; i 2020. 3. 18.
๋ฐ˜์‘ํ˜•