Skip to content

[BOJ] 병사배치하기 / silver 2 / 130분#70

Merged
WooTaek-Oh merged 14 commits into
cozykbin:mainfrom
WooTaek-Oh:main
Nov 18, 2025
Merged

[BOJ] 병사배치하기 / silver 2 / 130분#70
WooTaek-Oh merged 14 commits into
cozykbin:mainfrom
WooTaek-Oh:main

Conversation

@WooTaek-Oh

Copy link
Copy Markdown
Collaborator

가장 긴 증가하는 부분 수열이라는 알고리즘을 사용하는 문제인 것을 발견하고 가장 긴 증가하는 부분 수열에 관련된 문제를 풀면서 공부했고 그 내용을 기반으로 문제를 해결해 나갔습니다.
dp배열은 2중 반복문을 사용했고 반복문을 진행하면서 조건을 걸어서 조건에 맞는 길이만큼 DP에 저장하는 방식으로 문제를 풀었습니다
(시간은 다른 알고리즘을 공부하는 시간까지 포함시켰습니다)

DFS와 가지치기를 이용해 최소 에너지를 구했습니다.
세 가지 점프(작은, 큰, 매우 큰)를 모두 탐색하면서 누적 에너지를 더해가고,
마지막 돌에 도달하면 최소값(sum)을 갱신합니다.
중간에 누적 에너지가 현재 최소값보다 크면 더 이상 탐색하지 않도록 가지치기를 적용했습니다.
매우 큰 점프는 한 번만 사용할 수 있도록 cnt로 제한했습니다.
( 메모이제이션을 시도해 보았지만 구현에 실패했습니다. 이후 연습을 통해 익힌 뒤, 다음 코드부터는 적용해보겠습니다.)
가장 긴 증가하는 부분 수열이라는 알고리즘을 사용하는 문제인 것을 발견하고 가장 긴 증가하는 부분 수열에 관련된 문제를 풀면서 공부했고 그 내용을 기반으로 문제를 해결해 나갔습니다.
dp배열은 2중 반복문을 사용했고 반복문을 진행하면서 조건을 걸어서 조건에 맞는 길이만큼 DP에 저장하는 방식으로 문제를 풀었습니다
(시간은 다른 알고리즘을 공부하는 시간까지 포함시켰습니다)
이전에는 주영님이 제출하신 코드를 참고하며 공부한 뒤, 그 내용을 바탕으로 문제를 풀었습니다. 주영님이 사용하신 방식(DP 접근법)을 기반으로 하니 훨씬 쉽게 해결할 수 있었습니다.
이 코드는 위와 왼쪽 방향의 값을 누적해서 더해 나가며 목표 좌표에 도달하면 탐색을 멈추고, 그 지점의 값을 최종 결과로 출력하는 방식입니다.
[BOJ] Game Addiction / silver 2 / 60분
[BOJ] 징검다리 건너기/ silver1/ 200분
[BOJ] 다이나믹이 뭐예요? / silver 3 / 120분
@WooTaek-Oh WooTaek-Oh merged commit 93b3805 into cozykbin:main Nov 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant