📜 문제 내용 🤔 과정DFS를 이용하여 모든 경우의 수를 탐색해야겠다고 판단. 더하는 경우와 빼는 경우를 따로 탐색시키고, 맨 마지막에 전체 경우의 수 반환을 위해 두 경우의 수를 더해준다. 모든 숫자를 전부 사용했고, 마지막 결과값이 타겟 넘버와 같으면 경우의 수를 1 더해주고, 아니면 0 처리 진행. ✨ 최초 제출 답안 - 🙆♂️ 통과class Solution { public int solution(int[] numbers, int target) { return dfs(numbers, target, 0, 0); } public int dfs(int[] numbers, int target, int idx, int sum){ // 모든 숫자 사용 시 처리..
📜 문제 내용 🤔 과정방문 배열과 BFS로 해결할 수 있었다. 시작점을 찾은 뒤, 델타 배열을 이용해 4방 탐색을 BFS를 진행한다.BFS 진행 시, 범위와 방문 여부, 장애물 여부를 검사하면서 진행하고, 미방문 시 node를 추가시켜준다. 목표 지점에 도착하면 이동 횟수 반환 ✨ 최초 제출 답안 - 🙆♂️ 통과import java.util.*;class Solution { // 델타 배열: 상, 하, 좌, 우 public static int[] dr = {1, -1, 0, 0}; public static int[] dc = {0, 0, 1, -1}; public int solution(String[] board) { int n = board.length; ..
📜 문제 내용 🤔 과정방문 배열과 DFS로 해결할 수 있었다. String으로 계속 확인하는 과정 대신 'X'를 숫자 0으로 바꿔서 정수형 2차원 배열 map에 저장한다. 방문 배열을 확인하면서 dfs 반복 ✨ 최초 제출 답안 - 🙆♂️ 통과import java.util.*;class Solution { public static int[] dr = {1,-1,0,0}; // 델타 public static int[] dc = {0,0,1,-1}; public static int[][] map; // 무인도 식량 지도 public static boolean[][] visited; // 방문배열 public int[] solution(String[] maps) { ..
📜 문제 내용 🤔 과정방문 배열과 DFS로 해결할 수 있었다. ✨ 최초 제출 답안import java.util.*;import java.io.*;public class Main { public static int[] bridge; // 돌다리 배열 public static boolean[] visited; // 방문 배열 public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int n = Integer.parseInt(br.re..
📜 문제 내용 🤔 과정[startI, endI] 가 Intervals 배열 안에 들어있고, endI보다 크거나 같은 가장 작은 startJ 값을 찾는 문제다. 주어진 endI보다 크거나 같은 첫 번째 위치를 찾는 것이므로 하한값을 찾아야한다. 1차원 정수형 배열 ans에는 default 값으로 -1를 배치한다. hashMap에 ( Key, Value ) = ( startJ, Index ) 를 맵핑하여 put 한다. hashMap에 있는 Key(startJ)들을 오름차순으로 정렬한 ArrayList 형태의 keySet을 생성한다. 이분탐색을 통해 하한값을 찾고, 조건에 맞게 처리 ✨ 최초 제출 답안 - 🆖 테스트케이스 오답class Solution { public int[] findRigh..