알고리즘/programmers

[Programmers 코딩테스트 고득점 Kit] 도둑질

꾸준함. 2021. 9. 22. 15:12

문제 링크입니다; https://programmers.co.kr/learn/courses/30/lessons/42897

 

코딩테스트 연습 - 도둑질

도둑이 어느 마을을 털 계획을 하고 있습니다. 이 마을의 모든 집들은 아래 그림과 같이 동그랗게 배치되어 있습니다. 각 집들은 서로 인접한 집들과 방범장치가 연결되어 있기 때문에 인접한

programmers.co.kr

전형적인 DP 문제였습니다.

 

알고리즘은 아래와 같습니다.

1. 인접한 집을 털 수 없으므로 점화식은 다음과 같습니다. max(i번째 집 + (i - 2) 번째 집, (i - 1) 번째 집)

2. 1번에서 구한 점화식을 첫 번째 집 혹은 두 번째 집부터 적용이 가능합니다.

2.1 따라서, 첫 번째 집부터 적용한 점화식과 두 번째 집부터 적용한 점화식 중 더 큰 결과를 반환해줍니다.

 

 

개발환경:Visual Studio 2017

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형