728x90 java151 [백준 | 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. [99클럽 5기] Day11 TIL - 브루트포스 알고리즘, 스택 99클럽 5기 | Java | Middler 🗝️ 오늘의 학습 키워드 : Stack Brute Force⌛ 회고오늘 오전에는 설에 다 풀지 못하였던 윷놀이(Small) 문제를 드디어 해결하였습니다. 아이디어도 딱히 떠오르지 않고 시간이 오래 걸렸던터라 성취감을 느낄 수 있었던 문제였습니다.😍오늘 99클럽 문제는 Brute Force 문제였는데 처음 풀 때, 알고리즘 복잡도를 정확히 계산하지 않고 일단 해보자!라는 마음으로 제출하여 성공했는데 풀이를 작성하며 알고리즘 복잡도를 계산해보고 주어진 값의 범위가 크지 않아 Brute Force 문제로 풀 수 있는 문제였다는 것을 깨달았습니다. 이번 풀이를 작성하며 다음 문제를 풀 때에는 알고리즘 복잡도를 계산해 보고범위가 작게 주어질 때는 Brute Fo.. 2025. 2. 3. [백준 | 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. [99클럽 5기] Day9 TIL - 이분 그래프, 브루트포스 알고리즘 99클럽 5기 | Java | Middler🗝️ 오늘의 학습 키워드 : 이분 그래프 DFS 브루트포스 알고리즘 Map 문자열⌛ 회고이분 그래프가 뭔지 몰라서 한참 고민을 하였다.권장 시간 초과하면 블로그 검색 해 보기로 했었는데 오늘도 시간을 초과하여 고민하고 말았다. 제출 시간을 넘어서 오늘 아침에야 그냥 다른 블로그 보고 해결해야지라는 마음으로 문제를 풀다가 DFS 풀이가 머릿속에 번뜩이며 스쳐지나갔다. 이번에는 결국 성공!문제를 혼자 힘으로 해결한 것은 좋았지만 이렇게 하면 나중에 취직해서 코딩테스트 문제를 하루종일 잡고 있을 수도 없는 노릇이고...시험 친다고 생각하고 제한 시간이 넘으면 풀이를 찾아보고 TIL 작성으로 바로 넘어가야겠다고 다짐하였다. TIL 작성은 제출 기한 안에 못해서.. 2025. 1. 24. 이전 1 2 3 4 5 6 7 ··· 17 다음 728x90