🌞Algorithm/🔥Baekjoon 556

[Baekjoon] 13986_Gravity

문제(출처: https://www.acmicpc.net/problem/13986) 문제 풀이 'o' 위치에서 아래로 탐색하며 빈칸인 곳으로 이동한다. 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.Stack;import java.util.StringTokenizer;public class _13986_ { // Gravity public static void main(String[] args) throws IOExc..

[Baekjoon] 7585_Brackets

문제(출처: https://www.acmicpc.net/problem/7585) 문제 풀이 Stack을 사용하여 괄호가 합법적인지 확인한다. 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.Stack;public class _7585_ { // Brackets public static void main(String[] args) throws IOException { BufferedReader bf = new Buff..

[Baekjoon] 24570_Harp Tuning

문제(출처: https://www.acmicpc.net/problem/24570) 문제 풀이 알파벳인 경우, (+, -)인 경우, 숫자인 경우를 구분하여 출력한다. my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.OutputStreamWriter;import java.io.InputStreamReader;public class _24570_ { // Harp Tuning public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedRe..

[Baekjoon] 9863_Calling All Programmers

문제(출처: https://www.acmicpc.net/problem/9863) 문제 풀이 Queue를 사용하여 m번째 값을 제거한다.예를 들어 입력이 다음과 같다면10 7 5 Queue에 이 들어간다.1번째) -> 7 제거2번째) -> 4 제거3번째) -> 2 제거4번째) -> 1 제거5번째) -> 3이 정답 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.LinkedList;import java.util...

[Baekjoon] 26876_New Time

문제(출처: https://www.acmicpc.net/problem/26876) 문제 풀이 (두 번째 입력된 시간 - 첫 번째 입력된 시간)을 계산한 후 각각 차이 값을 더한다. 입력값이 다음과 같다면09:0921:21시간 차는 12:12 이므로 12+12 = 24가 정답이다. my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class _26876_ { // New Time public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedRead..

[Baekjoon] 10689_Hamza

문제(출처: https://www.acmicpc.net/problem/10689) 문제 풀이 모든 범주에서 최소한 하나의 문제를 풀기 위해 처음부터 풀어야 하는 최소 문제 수를 구한다.= HashSet을 사용하여 더 이상 새로운 값이 나오지 않을 때까지 문제를 푼다. 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.HashSet;import java.util.StringTokenizer;public class _106..

[Baekjoon] 4679_The Snail

문제(출처: https://www.acmicpc.net/problem/4679) 문제 풀이 U만큼 오르고, D만큼 내려간다. 하루가 지날수록 첫날 오를 수 있는 U x (F/100) 만큼씩 깎인다. while문을 사용하여 이 과정을 반복해 H보다 높이 오를 수 있는지, 오를 수 없는지 구한다. my solution (Java)import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;import java.io.OutputStreamWriter;public class _4679_ { // ..

[Baekjoon] 16756_Pismo

문제(출처: https://www.acmicpc.net/problem/16756) 문제 풀이 구간에 있는 숫자들의 최댓값과 최솟값의 차이로 최솟값의 구간을 찾기 위해 인접한 값을 이용하여 구한다.만약 4 3 1 이 주어진다면 4-3=1로 최솟값이지만 구간을 더 늘리면 4-1=3이 되기 때문이다. my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class _16756_ { // Pismo public static void main(String[] args) throws IOException ..

[Baekjoon] 6325_Definite Values

문제(출처: https://www.acmicpc.net/problem/6325) 문제 풀이 variable1 = variable2 variable2가 이미 선언되어 있다면 variable1이 확실한 값을 가지게 된다. HashSet을 사용하여 variable2가 있다면 variable1을 넣고, 없다면 variable1을 제거한다. 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.ArrayList;import java..

[Baekjoon] 21030_Frequent Alphabet

문제(출처: https://www.acmicpc.net/problem/21030) 문제 풀이 i번째 문자가 S의 i번째 또는 T의 i번째 문자로 구성된 새 비밀번호를 통해 얻을 수 있는 최다 점수를 구해야 한다. 1) 재귀를 사용하여 만들 수 있는 모든 새 비밀번호를 구해 최다 점수를 구했다 -> 시간 초과2) 문자열을 이중탐색하며 현재 위치에서 같은 문자를 찾아 최다 점수를 구했다 -> 시간 초과3) 문자열을 탐색하며 HashMap에 문자의 등장 횟수를 구했다. -> 통과 my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Hash..