DP2 [SWEA] 1952번 - 수영장 풀이 및 코드 분석 (Java) 문제 링크1. 문제 분석📌 문제 개요김 프로가 1년 동안 가장 적은 비용으로 수영장을 이용하는 방법을 찾아야 한다.4가지 이용권 종류1일 이용권 → 특정 일만 사용 (X일 × 1일 이용권 가격)1달 이용권 → 해당 월 전체 이용 (1달 이용권 가격)3달 이용권 → 연속 3개월 이용 (3달 이용권 가격)1년 이용권 → 1년 전체 이용 (1년 이용권 가격)🎯 요구사항각 월의 이용 계획과 이용권 가격이 주어졌을 때,최소 비용을 계산하는 프로그램을 작성해야 한다.1년 동안 최적의 조합을 찾아야 하므로백트래킹(Brute Force) 또는 DP(최적화 탐색)을 활용해야 한다.2. 해결 방법🔹 핵심 개념각 월마다 4가지 이용권 중 하나를 선택해야 한다.완전 탐색(백트래킹)을 이용해 모든 경우를 시도한다.이전 선.. 2025. 2. 27. [백준] 9465번 - 스티커 풀이 및 코드 분석 (Java) 문제 링크1. 문제 분석🏆 문제 개요2 × n 크기의 스티커 배열에서 점수를 최대로 얻도록 스티커를 선택해야 한다.단, 선택한 스티커와 변을 공유하는 스티커는 사용할 수 없다.최대 점수를 출력하는 프로그램을 작성해야 한다.🎯 요구사항각 테스트 케이스에 대해 최대 점수를 출력해야 한다.두 행(2 × n)으로 구성된 스티커 배열에서 인접하지 않은 스티커들을 선택해야 한다.1 ≤ n ≤ 100,000이므로, 효율적인 알고리즘이 필요하다. (시간 복잡도 O(n) 이하)2. 해결 방법🔹 핵심 개념이 문제는 다이나믹 프로그래밍(DP)을 활용하면 효과적으로 해결할 수 있다.점화식을 세우는 것이 핵심이며, 각 위치에서 얻을 수 있는 최대 점수를 누적해 나가는 방식이다.🔑 해결 절차입력값 처리 및 DP 테이블 초.. 2025. 2. 27. 이전 1 다음