728x90 Language/Java144 [백준 | Java] 17825번 주사위 윷놀이 17825번 / 주사위 윷놀이❓ 주사위 윷놀이🏷️ 관련 주제 : DFS Brute Force💦 나의 시도윷놀이(Small) 문제를 해결한 것에 용기를 얻어 그와 비슷한 방식으로 이번 문제도 풀어보기로 하였습니다.말 이동은 getEnd()메서드에서 switch-case문 및 재귀함수를 통해 말이 이동한 위치의 번호를 가져오도록 하였고DFS를 통해 최대 점수를 구하였습니다.각 말의 위치를 쉽게 알기 위해 Map 자료구조를 활용하여 현재 말의 위치를 저장하였고던져 나온 주사위의 크기를 Queue에 저장하여 FIFO 원칙으로 이동 칸 수를 하나씩 뽑아서 탐색을 진행하였습니다.처음 입력값을 넣어 코드의 실행 결과를 출력해 본 결과 값이 너무 크게 나오는 문제가 발생하였습니다.그래서 코드 중간 중간에 출력 값을.. 2025. 2. 6. [백준 | Java] 10845번 큐 10845번 / 큐❓ 큐🏷️ 관련 주제 : Queue Deque💦 나의 시도Queue를 이용해보자!문제 이름이 큐여서 큐(Queue)를 이용하면 될 줄 알았는데back명령어 실행을 하려고 하니 LinkedList가 더 나을 것 같아서 자료구조를 변경하였습니다.LinkedList를 이용해보자!LinkedList는 앞에서도 뒤에서도 원소를 뺄 수 있어서 문제의 모든 명령을 실행하기 적합한 자료구조로 판단되었습니다.따라서 LinkedList를 선언하고 StringTokenizer로 명령을 받아switch-case문을 통해 명령을 수행하도록 하였습니다.📑제출 기록 및 오답 원인💯 해결 방법import java.io.*;import java.util.*;public class Main { public.. 2025. 2. 6. [백준 | Java] 2529번 부등호 2529번 / 부등호❓ 부등호🏷️ 관련 주제 : DFS Greedy Brute Force Back Tracking💦 나의 시도DFS를 이용한 완전 탐색(Brute Force)첫번째 숫자부터 하나씩 부등호의 조건을 만족하는 값을 넣어가며 재귀함수를 호출하여 DFS로 문제를 해결해 보았습니다.💥 최댓값 자료 범위 체크!처음에 최댓값과 최솟값을 넣은 배열을 int형으로 선언하였었는데결과 출력값이 이상하게 나와서 다시 생각해보니최대로 나올 수 있는 값인 9876543210이 int형 범위를 넘어선 값이었습니다.따라서 최대,최솟값을 담을 배열을 long타입으로 선언하여 문제를 풀었습니다.💥 0으로 시작하는 값 체크!맨 앞의 숫자가 0인 경우 결과값을 출력하기 위해서는 맨 앞에 0을 추가해 주어야 했습니다... 2025. 2. 5. [백준 | Java] 1051번 숫자 정사각형 1051번 / 숫자 정사각형❓ 숫자 정사각형🏷️ 관련 주제 : DFS💦 나의 시도DFS로 문제를 해결해 보려고 했는데1%에서 바로 틀림.좀 더 고민해 보아야겠다.제출했던 코드import java.io.*;import java.util.*;public class Main { public static int[][] rec; public static int N; public static int M; public static int Largest; public static int maxSize; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedRea.. 2025. 2. 5. [백준 | Java] 1018번 체스판 다시 칠하기 1018번 / 체스판 다시 칠하기❓ 체스판 다시 칠하기🏷️ 관련 주제 : 브루트포스 알고리즘💦 나의 시도N × M 크기의 보드 왼쪽 상단부터 검은색(1)으로 칠한다고 가정하고칠할 색과 보드의 색이 일치하면 칠하지 않아도 됨.이것을 빼기로 계산하였습니다. 보드 색칠할 색일치 여부검은색 (1)검은색 (1)일치 (1 - 1 = 0)검은색 (1)흰색 (0)불일치 (1 - 0 = 1)흰색 (0)검은색 (1)불일치 (0 - 1 = -1)흰색 (0)흰색 (0)일치 (0 - 0 = 0)위의 표를 보면 일치할 때는 두 수의 차의 절댓값이 1인 것을 확인할 수 있습니다.이 절댓값을 이차원 배열 int[][] board에 저장하였고출력할 결과값 int minCnt를 32로 초기화하였습니다.(처음에 64로 초기화 했는데 .. 2025. 2. 3. [백준 | Java] 10828번 스택 10828번 / 스택❓ 스택🏷️ 관련 주제 : 스택💦 나의 시도문제 이름부터 스택이어서 스택 자료구조를 사용하여 문제를 해결하였습니다.Stack stack을 선언하고0 ~ N 범위를 반복문을 돌며 StringTokenizer로 명령어와 정수를 입력받아 명령어를 String order에 할당하였습니다.switch-case문을 사용하여 각 명령어에 대한 실행을 하도록 코드를 작성하였는데요."push" 명령어에서는 추가적으로 정수를 더 입력 받으므로 int X에 StringTokenizer의 nextToken()메서드를 사용하여 정수를 할당해 주었습니다.그 외에는 조건문과 Stack의 메서드를 그대로 사용하여 문제를 해결할 수 있었습니다.📑제출 기록 및 오답 원인💯 해결 방법import java.io... 2025. 2. 3. [백준 | Java] 12425번 윷놀이(Small) 12425번 / 윷놀이(Small)❓ 윷놀이(Small)🏷️ 관련 주제 : DFS Recursion Map💦 나의 시도먼저 입력값들을 하나씩 처리하였습니다. 던진 윷의 이동 칸 수를 저장할 때에는 큐 자료구조를 사용하였습니다.먼저 Map에 Do ~ Mo를 키로 이동할 칸 수를 값으로 하여 저장 후,입력값을 처리할 때 각 키 값으로 이동 칸 수를 조회하여 Queue q에 담아주었습니다. 그리고 A팀과 B팀의 말의 위치를 담을 자료구조로는 처음에 이차원 int 배열을 사용하였으나DFS 탐색 시, 이차원 배열에서 현재 말의 위치를 반복문을 통해 찾는 것은 Map이 O(1)으로 더 빠르므로최종적으로 Map 배열을 사용하여 각 인덱스에 해당하는 Map에 말의 위치를 키로 저장해 주었습니다.(A팀 : 0번 인덱.. 2025. 2. 3. [백준 | Java] 2490번 윷놀이 2490번 / 윷놀이❓ 윷놀이🏷️ 관련 주제 : 구현 배열💦 나의 시도Try. 배열과 Stream API를 이용한 방법일차원 String 배열 get을 선언하고 윷을 던져 나온 배의 개수를 인덱스로 하여 해당 인덱스에 출력해야할 결과값을 할당배의 개수를 세어서 배의 개수에 따라(0 ~ 4) 도(A), 개(B), 걸(C), 윷(D), 모(E)를 출력해야합니다.이 배의 개수를 배열의 인덱스라고 생각하고 String 배열을 만들어 해당 인덱스에 출력할 결과값을 넣기로 하였습니다.세 번의 입력을 받아야하므로 0 ~ 2 범위에서 반복문 돌기Stream API를 이용하여 배의 개수를 세고 int front에 할당front를 인덱스로 get에서 출력할 결과값을 꺼내 BufferedWriter에 쓰고 줄바꿈(br... 2025. 1. 25. [백준 | Java] 2573번 빙산 2573번 / 빙산❓ 빙산🏷️ 관련 주제 : topic1 topic2 topic3💦 나의 시도Try01. 반복문을 이용한 방법내가 시도한 코드import java.io.*;import java.util.*;public class Main { public static void main (String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); //.. 2025. 1. 25. 이전 1 2 3 4 5 6 ··· 16 다음 728x90