문제를 재귀로 하여 현재 position의 조각을 버리는 경우, 조각을 포함하는 경우, 조각이 첫 번째 탑과 두 번째의 높이 차이보다 큰 경우, 작은 경우 이렇게 나눠서 풀었습니다. 현재소스코드는 맞는 소스코드인데 ret = max(ret, solve(pos+1, diff))이런식으로 max를 해 주면 틀렸다고 나옵니다. ret는 현재 -INF 값을 가지므로 가장 작은 값인데 solve에서는 -INF나 자연수, 0의 값이 와서 ret = solve(pos + 1, diff)이 코드와 다를 것이 없을텐데 틀렸다고 나옵니다. 제 머리로는 이해가 가질 않는데 고수님들 부탁 드립니다!!(cache[i][j] = 1~i번째 조각까지 사용했을 때 첫번째 탑과 두 번째 탑의 높이 차이가 j만큼 날 때 탑의 높이의 최대값입니다.)
uytr083 5년 전 1
문제를 재귀로 하여 현재 position의 조각을 버리는 경우, 조각을 포함하는 경우, 조각이 첫 번째 탑과 두 번째의 높이 차이보다 큰 경우, 작은 경우 이렇게 나눠서 풀었습니다. 현재소스코드는 맞는 소스코드인데 ret = max(ret, solve(pos+1, diff))이런식으로 max를 해 주면 틀렸다고 나옵니다. ret는 현재 -INF 값을 가지므로 가장 작은 값인데 solve에서는 -INF나 자연수, 0의 값이 와서 ret = solve(pos + 1, diff)이 코드와 다를 것이 없을텐데 틀렸다고 나옵니다. 제 머리로는 이해가 가질 않는데 고수님들 부탁 드립니다!!(cache[i][j] = 1~i번째 조각까지 사용했을 때 첫번째 탑과 두 번째 탑의 높이 차이가 j만큼 날 때 탑의 높이의 최대값입니다.)