아!! 이 문제가 어려운 이유는 그 방법이 안 통해서이지요.
5번 치고는 어려운 편이였고요. 본 대회에서 44팀만이 풀었어요. 11% 정도만 완벽하게 맞춘 셈인데요.
예를 들어서 이런 경우를 생각해 봅시다.
8 2 3 1 3 5 6 2
4개씩 묶으면 14, 16 = 16이 나오죠.
3개씩 묶으면 13, 9 = 13이 나오니까. 사실 4개씩 묶었을 때 최대치 >= 3개씩 묶었을 때 최대치니까 저 방법이 통할 것인지도 모릅니다만..
[1] 1 1 8 6 5 1 1을 생각해 보면.
[] 부분부터 봤을 때
4개씩 묶으면 최대치가 11, 13이라 13일지도 모르겠지만.
3개씩 묶으면 이보다 더 큰 19이지요.
고로 저렇게 세워버리면 f(x)가 증가했다가 감소했다가 증가했다가 감소해버리는
이상한 형태가 되어버립니다.
rdd6584 5년 전
탐색 가능한 범위를 절반으로 잘라 그 지점을 이분탐색의 상한으로 잡았습니다.
그리고
i~mid의 범위만큼을 k로 잡고 붙어 있는 다른 k개 만큼의 합을 각각 fsum, esum으로 표현해서 탐색을 반복하는 방식으로 풀었는데요.
자꾸 0프로에서 틀렸습니다가 나오네요. 제가 문제를 잘못 이해한 걸까요? 아니면 구현에서 실수가 있는걸까요? 도와주세요.