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

Algorithm242

[๋ฐฑ์ค€] 2745๋ฒˆ: ์ง„๋ฒ• ๋ณ€ํ™˜ https://www.acmicpc.net/problem/2745 2745๋ฒˆ: ์ง„๋ฒ• ๋ณ€ํ™˜ B์ง„๋ฒ• ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋ฅผ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊ฟ” ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. 10์ง„๋ฒ•์„ ๋„˜์–ด๊ฐ€๋Š” ์ง„๋ฒ•์€ ์ˆซ์ž๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์—†๋Š” ์ž๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35 www.acmicpc.net ์ฝ”๋“œ import java.util.Scanner; public class Main { // num1 ์˜ num2 ์ œ๊ณฑ // numSqrt(15, 3) => 15 * 15 * 15 static int numSqrt(int num1, int num2) { int result = 1; for(int i=1; i=0.. 2020. 1. 28.
[๋ฐฑ์ค€] 1541๋ฒˆ: ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ(๊ทธ๋ฆฌ๋””) https://www.acmicpc.net/problem/1541 1541๋ฒˆ: ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ ์ฒซ์งธ ์ค„์— ์‹์ด ์ฃผ์–ด์ง„๋‹ค. ์‹์€ ‘0’~‘9’, ‘+’, ๊ทธ๋ฆฌ๊ณ  ‘-’๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ฐ€์žฅ ์ฒ˜์Œ๊ณผ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž๋Š” ์ˆซ์ž์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฐ์†ํ•ด์„œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์—ฐ์‚ฐ์ž๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ณ , 5์ž๋ฆฌ๋ณด๋‹ค ๋งŽ์ด ์—ฐ์†๋˜๋Š” ์ˆซ์ž๋Š” ์—†๋‹ค. ์ˆ˜๋Š” 0์œผ๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); String str = scan.next(); int sum = 0; int minusSum = 0; S.. 2020. 1. 26.
[๋ฐฑ์ค€] 1120๋ฒˆ: ๋ฌธ์ž์—ด(๊ทธ๋ฆฌ๋””) https://www.acmicpc.net/problem/1120 ์ฝ”๋“œ import java.util.Scanner; public class Main { public static String A; public static String B; public static int diffCount;// ๋ฌธ์ž์—ด A, B ์ฐจ์ด public static void main(String[] args) { Scanner scan = new Scanner(System.in); A = scan.next(); B = scan.next(); int result = A.length();// A๊ฐ€ B๋ณด๋‹ค ์งง์œผ๋ฏ€๋กœ, A์˜ ๊ธธ์ด๋งŒํผ ์ง€์ • for(int i=0; i aba, dbb -> 2 i=2 -> aba, bba -> 1 ... ์ฆ‰ .. 2020. 1. 23.
[๋ฐฑ์ค€] 10610๋ฒˆ: 30(๊ทธ๋ฆฌ๋””) https://www.acmicpc.net/problem/10610 10610๋ฒˆ: 30 ๋ฌธ์ œ ์–ด๋Š ๋‚ , ๋ฏธ๋ฅด์ฝ”๋Š” ์šฐ์—ฐํžˆ ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์–‘์ˆ˜ N์„ ๋ณด์•˜๋‹ค. ๋ฏธ๋ฅด์ฝ”๋Š” 30์ด๋ž€ ์ˆ˜๋ฅผ ์กด๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋Š” ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์ฐพ์€ ์ˆ˜์— ํฌํ•จ๋œ ์ˆซ์ž๋“ค์„ ์„ž์–ด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•œ๋‹ค. ๋ฏธ๋ฅด์ฝ”๋ฅผ ๋„์™€ ๊ทธ๊ฐ€ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•˜๋Š” ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์ž…๋ ฅ N์„ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค. N๋Š” ์ตœ๋Œ€ 105๊ฐœ์˜ ์ˆซ์ž๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, 0์œผ๋กœ ์‹œ์ž‘ํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ถœ๋ ฅ ๋ฏธ๋ฅด์ฝ”๊ฐ€ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•˜๋Š” ์ˆ˜๊ฐ€ ์กด์žฌํ•œ๋‹ค๋ฉด ๊ทธ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋ผ. ๊ทธ ์ˆ˜๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” www.acmicpc.net ์ฝ”๋“œ import java.util.Scanner; public class Main { public static String str; p.. 2020. 1. 23.
[๋ฐฑ์ค€] 9506๋ฒˆ: ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ https://www.acmicpc.net/problem/9506 9506๋ฒˆ: ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ ๋ฌธ์ œ ์–ด๋–ค ์ˆซ์ž n์ด ์ž์‹ ์„ ์ œ์™ธํ•œ ๋ชจ๋“  ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ๊ณผ ๊ฐ™์œผ๋ฉด, ๊ทธ ์ˆ˜๋ฅผ ์™„์ „์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 6์€ 6 = 1 + 2 + 3 ์œผ๋กœ ์™„์ „์ˆ˜์ด๋‹ค. n์ด ์™„์ „์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์ž…๋ ฅ ์ž…๋ ฅ์€ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค ํ•œ ์ค„ ๊ฐ„๊ฒฉ์œผ๋กœ n์ด ์ฃผ์–ด์ง„๋‹ค. (2 < n < 100, 000) ์ž…๋ ฅ์˜ ๋งˆ์ง€๋ง‰์—” -1์ด ์ฃผ์–ด์ง„๋‹ค. ์ถœ๋ ฅ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ๋งˆ๋‹ค ํ•œ์ค„์— ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. n์ด ์™„์ „์ˆ˜๋ผ๋ฉด, n์„ n์ด ์•„๋‹Œ ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด์–ด ์ถœ๋ ฅํ•œ๋‹ค www.acmicpc.net ์ฝ”๋“œ 1(ํ‹€๋ฆฐ ์ฝ”๋“œ) import java.util.Scanner; public class Main { public static voi.. 2020. 1. 23.
[๋ฐฑ์ค€] 11656๋ฒˆ: ์ ‘๋ฏธ์‚ฌ ๋ฐฐ์—ด https://www.acmicpc.net/problem/11656 11656๋ฒˆ: ์ ‘๋ฏธ์‚ฌ ๋ฐฐ์—ด ์ฒซ์งธ ์ค„์— ๋ฌธ์ž์—ด S๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. S๋Š” ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ธธ์ด๋Š” 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); String str = scan.next(); String[]sArr = new String[str.length()]; for(int i=0; i 2020. 1. 22.
[๋ฐฑ์ค€] 2606๋ฒˆ: ๋ฐ”์ด๋Ÿฌ์Šค(DFS, BFS) https://www.acmicpc.net/problem/2606 2606๋ฒˆ: ๋ฐ”์ด๋Ÿฌ์Šค ์ฒซ์งธ ์ค„์—๋Š” ์ปดํ“จํ„ฐ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ปดํ“จํ„ฐ์˜ ์ˆ˜๋Š” 100 ์ดํ•˜์ด๊ณ  ๊ฐ ์ปดํ“จํ„ฐ์—๋Š” 1๋ฒˆ ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๋ฒˆํ˜ธ๊ฐ€ ๋งค๊ฒจ์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ง์ ‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ์ปดํ“จํ„ฐ ์Œ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด์–ด์„œ ๊ทธ ์ˆ˜๋งŒํผ ํ•œ ์ค„์— ํ•œ ์Œ์”ฉ ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ง์ ‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ์ปดํ“จํ„ฐ์˜ ๋ฒˆํ˜ธ ์Œ์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ์ฝ”๋“œ 1(์ธ์ ‘ํ–‰๋ ฌ, DFS) import java.util.Scanner; public class Main { static int map[][]; static boolean visit[]; static int n, m, v; static int count = 0; public static int .. 2020. 1. 22.
[๋ฐฑ์ค€] 1260๋ฒˆ: DFS์™€ BFS https://www.acmicpc.net/problem/1260 1260๋ฒˆ: DFS์™€ BFS ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000), ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M(1 ≤ M ≤ 10,000), ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•  ์ •์ ์˜ ๋ฒˆํ˜ธ V๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ„์„ ์ด ์—ฐ๊ฒฐํ•˜๋Š” ๋‘ ์ •์ ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์–ด๋–ค ๋‘ ์ •์  ์‚ฌ์ด์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ„์„ ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ๊ฐ„์„ ์€ ์–‘๋ฐฉํ–ฅ์ด๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.*; public class Main { static int map[][]; static boolean [] visit; static int n, m, v; // ์ธ์ ‘ํ–‰๋ ฌ public static void dfs(int i) { visit[i] = t.. 2020. 1. 22.
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค[Java] - ๋•…๋”ฐ๋จน๊ธฐ https://programmers.co.kr/learn/courses/30/lessons/12913 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋•…๋”ฐ๋จน๊ธฐ | ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋•…๋”ฐ๋จน๊ธฐ ๊ฒŒ์ž„์„ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋•…๋”ฐ๋จน๊ธฐ ๊ฒŒ์ž„์˜ ๋•…(land)์€ ์ด Nํ–‰ 4์—ด๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๋ชจ๋“  ์นธ์—๋Š” ์ ์ˆ˜๊ฐ€ ์“ฐ์—ฌ ์žˆ์Šต๋‹ˆ๋‹ค. 1ํ–‰๋ถ€ํ„ฐ ๋•…์„ ๋ฐŸ์œผ๋ฉฐ ํ•œ ํ–‰์”ฉ ๋‚ด๋ ค์˜ฌ ๋•Œ, ๊ฐ ํ–‰์˜ 4์นธ ์ค‘ ํ•œ ์นธ๋งŒ ๋ฐŸ์œผ๋ฉด์„œ ๋‚ด๋ ค์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ๋•…๋”ฐ๋จน๊ธฐ ๊ฒŒ์ž„์—๋Š” ํ•œ ํ–‰์”ฉ ๋‚ด๋ ค์˜ฌ ๋•Œ, ๊ฐ™์€ ์—ด์„ ์—ฐ์†ํ•ด์„œ ๋ฐŸ์„ ์ˆ˜ ์—†๋Š” ํŠน์ˆ˜ ๊ทœ์น™์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด, | 1 | 2 | 3 | 5 | | 5 | 6 | 7 | 8 | | 4 | 3 | 2 | 1 | ๋กœ ๋•…์ด ์ฃผ์–ด์กŒ๋‹ค๋ฉด programmers.co.kr ํ’€์ด DP๋ฌธ์ œ๋‹ค. ์–ด๋–ป๊ฒŒ ํ’€์ง€ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ ๊ฐ ์—ด๋งˆ๋‹ค ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๊ณ , .. 2020. 1. 22.
[๋ฐฑ์ค€] 10815๋ฒˆ: ์ˆซ์ž ์นด๋“œ https://www.acmicpc.net/problem/10815 10815๋ฒˆ: ์ˆซ์ž ์นด๋“œ ์ฒซ์งธ ์ค„์— ์ƒ๊ทผ์ด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ˆซ์ž ์นด๋“œ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 500,000)์ด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์ˆซ์ž ์นด๋“œ์— ์ ํ˜€์žˆ๋Š” ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ˆซ์ž ์นด๋“œ์— ์ ํ˜€์žˆ๋Š” ์ˆ˜๋Š” -10,000,000๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 10,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. ๋‘ ์ˆซ์ž ์นด๋“œ์— ๊ฐ™์€ ์ˆ˜๊ฐ€ ์ ํ˜€์žˆ๋Š” ๊ฒฝ์šฐ๋Š” ์—†๋‹ค. ์…‹์งธ ์ค„์—๋Š” M(1 ≤ M ≤ 500,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋„ท์งธ ์ค„์—๋Š” ์ƒ๊ทผ์ด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ˆซ์ž ์นด๋“œ์ธ์ง€ ์•„๋‹Œ์ง€๋ฅผ ๊ตฌํ•ด์•ผ ํ•  M๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉฐ, ์ด www.acmicpc.net ์ฝ”๋“œ import java.util.HashSet; import java.util.Scanner; public class Main .. 2020. 1. 22.
๋ฐ˜์‘ํ˜•