쿠키런 오븐브레이크는 점프와 슬라이드로 젤리를 최대한 많이 획득하여 최대 점수를 달성하는 게임이다. 스탠딩벨은 자신이 가장 좋아하는 팬케이크맛 쿠키의 성능을 조절하기 위해, 쿠키의 설정값 (maxC, u, d)을 바꾸면서 점수가 얼마나 변하는지 실험을 하기로 했다.
팬케이크맛 쿠키를 실험하기 위해 가로 w+1, 세로 h+1 짜리 맵에서 아래의 조건에 따라 플레이하려고 한다.
이제부터 여러분은 위의 실험 환경에서 팬케이크맛 쿠키의 능력을 바꿔보면서 실험할 예정이다. 팬케이크맛 쿠키의 능력치 maxC, u, d 를 조절하면서 팬케이크맛 쿠키의 밸런스를 조절해보자. 아래의 예시는 w=4, h=5, u=3, d=1, maxC=2로 설정된 맵에서 시점 t별 PanCakeCookie 클래스의 정보이다.

팬케이크맛 쿠키의 능력 조정은 ‘획득할 수 있는 최대 점수’를 기준으로 설정해야 밸런스를 파악할 수 있다. 즉, 0<t≤w 인 각 시점 t에 대해서 0<t′<t 의 선택이 정해져 있을 때, t 시점의 점수를 최대화하도록 능력 사용 여부를 결정한다. 만약, 두가지 이상 경로에서 얻을 수 있는 최대 점수가 같다면 더 빠른 시점에 능력을 사용하는 경로를 우선시한다. 위 경로를 저장하고 있는 PanCakeCookie 클래스를 구현해보자.
각각 테스트 케이스당 능력치를 변화하는 멤버함수(setC, setU, setD)는 최대 15번 들어오며, 각 능력치 변화 이후 setT 함수는 최대 100회 호출된다. 즉, setT 함수는 최대 1 500회 호출된다.