hep93   5년 전

가장 높은 빌딩을 중심으로 왼쪽과 오른쪽으로 나눠서 분할정복하는 알고리즘으로 풀었는데 계속 틀리네요.

가장 높은 빌딩을 i번쨰 빌딩이라고 했을때 그것을 중심으로 왼쪽의 가능한 경우의수 x 오른쪽의 경우의수 x 왼쪽과 오른쪽에 빌딩을 분배하는 경우의수(combination)으로 계산했습니다.

어디가 틀린걸까요 ㅜㅜ

dohoon   1년 전

논리 자체는 맞지만 절반으로 나눠가야 분할 정복이 됩니다. 분할 정복으로 짜신 것 같지는 않은데...

computeL(i, L-1)*computeR(i, R-1)가 아니라 computeL(i-1, L-1)*computeR(N-i, R-1)쯤 되어야 할 것 같네요.

블로그 두 번째, 세 번째 풀이가 비슷한 논리인 것 같은데 참고하시면 좋을 것 같네요.

댓글을 작성하려면 로그인해야 합니다.