jinhot   4년 전

안녕하세요. 4902 삼각형의 값 문제를 풀고 있는데요.

최적화가 잘 되지 않아 여쭙니다.

제 전략은 다음과 같습니다.

(위가 뾰족한 삼각형 구하기)

- 제일 큰 삼각형을 구합니다.

- 제일 큰 삼각형에서 좌측 빗변을 뺀 것, 우측 빗변을 뺀 것, 아래 선을 뺀 것을 다시 재귀호출 합니다.

- 이때, 빗변과 아래 선을 빼기 위해 부분합을 이용하여 즉각적으로 빼는 변의 크기를 구하게 합니다.

- 또한, visit 리스트를 만들어서 두번 이상 같은 삼각형을 연산하지 못하게 합니다.

(아래가 뾰족한 삼각형 구하기)

- 아래가 뾰족한 삼각형은 2의 배수인 위가 뾰족한 삼각형에서 2/1 크기의 삼각형을 세개 빼서 중간 부분만 남도록 합니다.

자꾸 50% 이상에서 시간 초과가 발생합니다.

배열 등을 미리 할당하거나, 입출력 함수를 바꾸어 보아도 해결이 되지 않는데, 다른 방법으로 문제를 접근해야할지 모르겠습니다...

혹시 힌트를 주실 수 있다면 부탁드리겠습니다.

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