[JAVA][Programmers] 게임 맵 최단거리
·
Coding Test/Programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 📌 접근 방법이 문제는 BFS(너비 우선 탐색)를 사용하여 해결할 수 있습니다. BFS는 한 번에 여러 방향으로 탐색을 진행하기 때문에 최단 경로를 구하는 데 적합한 알고리즘입니다.주어진 게임 맵에서 출발지점인 (0, 0)부터 도착지점인 (n-1, m-1)까지의 최단 경로를 구하는 문제이므로, BFS를 활용해 각 칸을 차례대로 탐색하면서 가장 빠르게 목표에 도달할 수 있는 경로를 찾는 방식입니다.BFS는 큐(Queue)를 사용해 탐색을 진행합니다. 초기 상태에서 큐에 시작 지점 (0, 0)을 넣고, 각 칸을 방문하면서 이동 횟수를 함께 기록합니다. 큐에서..
[JAVA][Programmers] 타겟 넘버
·
Coding Test/Programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 접근 방식주어진 숫자 배열에서 각 숫자에 대해 더하거나 빼는 두 가지 선택을 재귀적으로 탐색하여, 그 결과가 주어진 타겟 값과 일치하는 경우의 수를 구하는 문제입니다.dfs 함수는 배열의 끝에 도달할 때까지 각 숫자에 대해 더하거나 빼는 두 가지 경우를 재귀적으로 호출하며 탐색배열의 끝에 도달하면, 현재까지의 합(sum)이 타겟 값(target)과 일치하면 정답 카운트(answer)를 증가class Solution { static int answer = 0; public int solution(int[] numbers, int target) ..
[Java][Programmers] 기능개발
·
Coding Test/Programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 접근 방식✅ 문제 핵심 이해각 기능은 100%가 되어야 배포 가능.앞에 있는 기능이 완성되지 않으면, 뒤에 있는 기능이 먼저 완료되어도 함께 대기.매일 배포할 수 있고, 같은 날 완료된 기능은 함께 배포.각 기능별 남은 작업 일수 계산(100 - 현재 진도) / 개발 속도 로 구하되, 나머지가 있으면 +1일 더 필요.이 값을 리스트 tmp에 저장.배포 조건에 따라 그룹핑map에 key를 "배포 시점", value를 "해당 시점에 함께 배포되는 기능 수"로 저장.이전 기능의 배포일보다 더 빠르게 끝나는 기능이 있어도, 앞 기능이 끝날 때까지 기다려야 하므..
[Java][Programmers] 연속 부분 수열 합의 개수
·
Coding Test/Programmers
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 접근 방식🔸 1. 원형 수열이란?일반 수열처럼 처음부터 끝까지만 보는 것이 아니라,마지막 요소 뒤에 첫 요소가 다시 연결되어 있는 것처럼 생각.예: [7, 9, 1, 1, 4] → 원형으로 보면 [7, 9, 1, 1, 4, 7, 9, 1, 1, 4, ...] 처럼 시작 위치에 따라 연결되어 감싸지는 구조.🔸 2. 연속 부분 수열 합이란?길이 1부터 전체 길이까지 가능한 모든 연속 부분 수열을 잡아,그 부분 수열의 합을 구함예: [7, 9, 1, 1, 4]길이 1 → [7], [9], [1], [1], [4] → 합: 7, 9, 1, 1, 4길이 2 ..