- 발행일
99클럽 코테 스터디 30일차 TIL + 오늘의 학습 키워드: 동적계획법
99클럽 코테 스터디 30일차 TIL + 오늘의 학습 키워드: 동적계획법
이 글은 네이버 블로그에 2025년 3월 7일에 올렸던 것을 그대로 옮겨온 것입니다.
function maxBoxes(n, sizes) {
// dp 배열 초기화: 각 상자를 포함할 때의 최대 상자 개수
const dp = new Array(n).fill(1);
// 모든 상자에 대해 반복
for (let i = 1; i < n; i++) {
for (let j = 0; j < i; j++) {
// 앞의 상자 크기가 현재 상자 크기보다 작으면 dp 갱신
if (sizes[j] < sizes[i]) {
dp[i] = Math.max(dp[i], dp[j] + 1);
}
}
}
// dp 배열에서 최대값 반환
return Math.max(...dp);
}
// 예제 입력
const n = 8;
const sizes = [1, 6, 2, 5, 7, 3, 5, 6];
// 결과 출력
console.log(maxBoxes(n, sizes)); // 출력: 5
오늘의 회고 - 어떤 문제가 있었고, 나는 어떤 시도를 했는지
어떻게 해결했는지
무엇을 새롭게 알았는지
내일 학습할 것은 무엇인지
• 비기너: https://www.acmicpc.net/problem/1524 (30분)
• 미들러: https://www.acmicpc.net/problem/1965 (1시간 15분)
• 챌린저: https://school.programmers.co.kr/learn/courses/30/lessons/150369 (1시간 30분)
필수 해시태그: #99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL
