2024.06.22기준 - 실버1백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 입력을 기준으로 점프할 수 있는 거리를 이용해 오른쪽 맨 밑에 칸(h, w)에 갈 수 있는지 확인하는 문제입니다. 1. 우선적으로 조건 중 보드블록이 다르다면 갈 수 없기 때문에, 시작과 끝의 보드블록을 확인합니다.// 시작과 끝의 보도블럭이 다르면 무조건 실패한다.if (map[0][0] != map[h - 1][w - 1]) { sb.append("DEAD");} 2. 현재 참조하는 위치에서 갈 수 있는 모든 좌표를 visit[][]에 true로 설정을 해줍니다.// 갈 수 있는 곳을 체크하는 함수.private static void function(int y, int x) { int n..
2024.06.20기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 종이 위에 적힌 글씨를 한 번만 접었을 때 맞닿은 쌍의 개수가 가장 많은 개수를 출력하는 문제입니다. 1. 부분 문자열을 따로 저장했습니다.while (t-- > 0) { st = new StringTokenizer(br.readLine()); int l = Integer.parseInt(st.nextToken()); int r = Integer.parseInt(st.nextToken()); sub = new char[r - l + 1]; for (int i = l - 1; i 2. 부분 문자열을 제한된 범위 안에 반으로 접었을 때, 가장 글자가 많이 겹치는 수를 함수를 통해 구했..
2024.06.19기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 조건에 맞게 배열의 자리를 교체해주는 문제입니다. 저의 접근은 1. 먼저 조건을 만족하는지 체크하기 위한 함수를 생성했습니다.private static void find(int num) { int sub; for (int i = 0; i 조건에 만족한다면 자리를 서로 교체해주는 연산까지 들어가 있습니다. 2. 그 후 해당하는 자리의 번호를 출력해줍니다. 예시 1번으로 설명을 추가하겠습니다. 1. 기존 상태 2, 130이 들어왔을 때, 130 = 2^7 + 2^1, 1번과 7번 교체 3. 72가 들어왔을 때, 72 = 2^6 + 2^3, 6번과 3번 교체 4. 130이 들어왔을 때, 130 ..