728x90 DFS18 [백준 | 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] 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. [99클럽 5기] Day9 TIL - 이분 그래프, 브루트포스 알고리즘 99클럽 5기 | Java | Middler🗝️ 오늘의 학습 키워드 : 이분 그래프 DFS 브루트포스 알고리즘 Map 문자열⌛ 회고이분 그래프가 뭔지 몰라서 한참 고민을 하였다.권장 시간 초과하면 블로그 검색 해 보기로 했었는데 오늘도 시간을 초과하여 고민하고 말았다. 제출 시간을 넘어서 오늘 아침에야 그냥 다른 블로그 보고 해결해야지라는 마음으로 문제를 풀다가 DFS 풀이가 머릿속에 번뜩이며 스쳐지나갔다. 이번에는 결국 성공!문제를 혼자 힘으로 해결한 것은 좋았지만 이렇게 하면 나중에 취직해서 코딩테스트 문제를 하루종일 잡고 있을 수도 없는 노릇이고...시험 친다고 생각하고 제한 시간이 넘으면 풀이를 찾아보고 TIL 작성으로 바로 넘어가야겠다고 다짐하였다. TIL 작성은 제출 기한 안에 못해서.. 2025. 1. 24. [프로그래머스 | Java] 양과 늑대 코딩테스트 연습 > 2022 KAKAO BLIND RECRUITMENT > 양과 늑대❓ 양과 늑대🏷️ 관련 주제 : BFS DFS💦 나의 시도Try. 재귀함수를 이용한 DFS를 이용한 풀이재귀함수를 이용한 DFS로 문제를 풀텐데 양-늑대 트리 구조는 변하지 않으므로인스턴스 변수 Map link를 선언키 : 부모 노드 값값 : 키로 자식 노드들의 값을 담은 ArrayList인스턴스 변수 int[] info를 선언각 노드에 있는 양 또는 늑대에 대한 정보가 담긴 배열(양 = 0, 늑대 = 1)solution() 메서드는 int[] info와 int[][] edges를 매개변수로 받음- info : 각 노드에 있는 양 또는 늑대에 대한 정보가 담긴 배열(양 = 0, 늑대 = 1)- edges : 2진 트리.. 2025. 1. 23. [99클럽 5기] Day8 TIL - DFS 99클럽 5기 | Java | Middler 🗝️ 오늘의 학습 키워드 : DFS⌛ 회고오늘은 비기너 문제 먼저 풀지 않고 미들러 문제부터 풀었다.다행히 문제도 그렇게 어렵지 않아서 금새 푼 것 같다.지도의 크기 N을 입력 받고 N x N 크기의 지도를 한 행씩 집이 있는 곳은 1, 없는 곳은 0으로 입력 받은 후, 1이 상하좌우로 연결되어 있는 곳을 하나의 단지로 단지 내 집 수를 각 구하고 총 단지 수와 단지내 집 수를 오름차순으로 출력하는 문제였는데이차원 배열과 재귀함수를 이용한 DFS로 문제를 쉽게 해결하였다.저녁 먹고 코딩테스트를 해서 TIL 작성이 늦어질까 걱정했는데 생각보다 금새 해결할 수 있어서 다행이었다.정답을 기록한 코드였지만 풀이를 작성하며 다시 보니이미 탐색한 집 및 집이 없는 곳에.. 2025. 1. 22. [백준 | Java] 2667번 단지번호붙이기 2667번 / 단지번호붙이기❓ 단지번호붙이기🏷️ 관련 주제 : DFS💦 나의 시도Try. DFS지도의 크기 N을 BufferedReader로 입력 받아 int형으로 변환 후, int N을 초기화N x N 지도 map을 이차원 int 배열로 선언각 집을 탐색할 때, 이미 탐색한 집을 체크할 이차원 boolean 배열 visited 초기화0 ~ (N - 1) 범위를 이중 for문으로 돌기집의 유무를 나타내는 값 int house를 br.read() - '0'로 초기화map[i][j]에 house를 할당house가 0이면 visited에 true를 할당안쪽 for문이 끝날 때, br.readLine()을 실행하여 줄바꿈 공백 처리단지내 집 수를 담을 ArrayList houseCntArray를 초기화단지내.. 2025. 1. 22. [백준 | Java] 1697번 숨바꼭질 1697번 / 숨바꼭질❓ 숨바꼭질🏷️ 관련 주제 : DFS BFS 시간복잡도 💦 나의 시도Try01. DFS재귀함수를 이용하여 DFS로 수빈이 이동한 점이 동생이 위치한 점과 일치하는지 탐색⏱️ 시간 초과작성했던 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static int limit; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedRe.. 2025. 1. 22. [99클럽 5기] Day7 TIL - 자료형, BFS, DFS 99클럽 5기 | Java | Middler 🗝️ 오늘의 학습 키워드 : 자료형 BFS DFS ⌛ 회고오늘도 비기너 문제 먼저 풀고 미들러 문제를 풀었다.비기너 문제는 금새 풀었는데 미들러 문제는 1시간이 걸려도 풀리지 않았다.미들러 문제를 풀 때가 자정이 넘어갔을 때였기 때문에 피곤해서 일단 자고다음날 아침 문제의 풀이를 검색해 보았다.내가 시도한 방법은 BFS였는데 생각해 보니 DFS로도 풀 수 있을 것 같아서검색한 블로그의 풀이를 보지 않고 다시 시도해 보았다.채점의 퍼센트가 조금 더 올라가긴 했지만 시간 초과가 났다.검색한 반례 중, (1 100000)나 (10007 98767) 같은 입력을 할 때 시간이 오래 걸리던데시간을 줄일 방법을 아직 찾지 못해서 일단 TIL부터 올리기로 했다. ❓ 오늘.. 2025. 1. 22. [백준 | Java] 1260번 DFS와 BFS 1260번 / DFS와 BFS❓ DFS와 BFS🏷️ 관련 주제 : Graph DFS BFS💦 나의 시도Try입력받은 두 정점 dot1, dot2에 대하여 int형 이차원 배열 graph[dot1 - 1][dot2 - 1], graph[dot2 - 1][dot1 - 1]에 1을 할당전체 배열을 탐색하려면 오래 걸릴 것 같아서 int[] minNum의 인덱스 i에 정점 i + 1에 연결된 최소 정점의 값을 할당DFS 실행지나간 정점을 체크하기 위해 ArrayList visited를 사용정점을 지날 때, visited에 해당 정점의 값을 추가BFS 실행큐(Queue)를 사용큐에 시작할 정점을 추가 후, BFS 탐색 시작큐에서 원소를 꺼내 해당 정점에 간선이 연결된 정점을 조회큐에서 꺼낸 원소는 visite.. 2025. 1. 21. 이전 1 2 다음 728x90