🌞Algorithm 543

[Baekjoon] 12026_BOJ 거리

Silver I문제(출처: https://www.acmicpc.net/problem/12026) 문제 풀이  이중 for문을 사용하여 보도블록을 전체 탐색한다. B -> O -> J 순서로 확인하면서 최솟값을 찾는다.  my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class _12026_ { // BOJ 거리 public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));..

[Baekjoon] 2529_부등호

Silver I문제(출처: https://www.acmicpc.net/problem/2529) 문제 풀이  만들 수 있는 모든 조합을 구하면서 부등호에 만족하는 값만 다음 값으로 넘겨준다.  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.StringTokenizer;public class _2529_ { // 부등호 static int num[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; stat..

[Baekjoon] 1890_점프

Silver I문제(출처: https://www.acmicpc.net/problem/1890) 문제 풀이  게임 판의 정보를 저장하는 배열, 이동 위치를 표시하는 배열, 경로 수를 구하는 배열 총 3개의 배열을 사용해서 문제를 해결했다.  만약 문제에서 주어진 예제로 설명해 보자.42 3 3 11 2 1 31 2 3 13 1 1 0와 같이 예제가 주어졌다면 이동 위치를 표시하는 배열은 다음과 같다. 경로 수를 구하는 배열은 다음과 같다. 각 경로는 같은 이동 번호인 경우가 아니라면 따로 관리한다. 위에서 4번 이동하여 오른쪽 아래로 오는 경우가 2가지였고 5번 이동해서 오른쪽 아래 도착하는 경우가 1가지이므로 먼저 도착한 경우의 수를 따로 저장해 두고 1로 저장한다. 반복문을 사용해서 이동 번호로 탐색하..

[Baekjoon] 1495_기타리스트

Silver I문제(출처: https://www.acmicpc.net/problem/1495) 문제 풀이  처음에는 queue를 사용해서 가능한 모든 볼륨을 add와 pop을 통해 구했다. 이렇게 구현할 경우 메모리 초과가 발생해서 어떻게 고쳐야 할지 몰랐다.  찾아본 결과 0 이상 M이하의 값만 가능하므로 배열을 m+1만큼 선언한 후에 배열[볼륨] = 인덱스로 값을 구하여 메모리 초과가 발생하지 않는다. 예를 들어1 5 105 이라면 temp [5]=1로 초기화한 후에 0번째 곡을 연주하기 위해 볼륨을 바꾼다고 하자.temp [10]=2, temp [0]=2가 된다. 0 이상 M이하인 배열을 전체 탐색하여 배열 값이 2인 인덱스 중에 최댓값을 출력한다.  my solution (Java)import j..

[Baekjoon] 16194_카드 구매하기 2

Silver I문제(출처: https://www.acmicpc.net/problem/16194) 문제 풀이  배열을 사용해서 카드를 구매할 때의 최솟값을 구한다. 백준 11052번 카드 구매하기 문제에서 최댓값을 최솟값으로 바꾸면 문제를 해결할 수 있다. https://melody-coding.tistory.com/453 [Baekjoon] 11052_카드 구매하기Silver I문제(출처: https://www.acmicpc.net/problem/11052) 문제 풀이  배열을 사용해서 카드를 구매할 때의 최댓값을 구한다.  my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreme..

[Baekjoon] 11052_카드 구매하기

Silver I문제(출처: https://www.acmicpc.net/problem/11052) 문제 풀이  배열을 사용해서 카드를 구매할 때의 최댓값을 구한다.  my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class _11052_ { // 카드 구매하기 public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in..

[Baekjoon] 27497_알파벳 블록

Silver II문제(출처: https://www.acmicpc.net/problem/27497) 문제 풀이  deque와 stack을 사용해서 문제를 해결했다. deque에는 문자열을 넣고, 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.ArrayDeque;import java.util.Deque;import java.util.Stac..

[Baekjoon] 2872_우리집엔 도서관이 있어

Silver II문제(출처: https://www.acmicpc.net/problem/2872) 문제 풀이  사전 순으로 놓기 위해서는 제일 큰 값이 밑에 있는지부터 확인한다. 만약 1 3 4 2 순으로 되어있다면 3 4는 순서대로 되어 있으므로 1 2만 다시 쌓으면 된다.  my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class _2872_ { // 우리집엔 도서관이 있어 public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedRead..

[Baekjoon] 5212_지구 온난화

Silver II문제(출처: https://www.acmicpc.net/problem/5212) 문제 풀이  인접한 세 칸 또는 네 칸에 바다가 있는 땅을 바다로 바꾼 후 섬이 있는 곳의 가장 작은 좌표와 가장 큰 좌표를 구해 구간만큼 출력한다.  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.StringTokenizer;public class _5212_ { // 지구 온난화 static char[][] arr, r..

[Baekjoon] 18429_근손실

Silver III문제(출처: https://www.acmicpc.net/problem/18429) 문제 풀이  조합을 사용하여 모든 경우의 수를 확인한다. 확인하면서 500 미만이 되는 경우 다음 조합을 확인한다.  my solution (Java)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class _18429_ { // 근손실 static int arr[], answer; static boolean visited[]; public static void main(String[] args) throws IOExcep..