Sane's Monthly Algorithms Challenge: October 2008
Jumpscotch (Senior Level)
Hopscotch is a simple game which can be played with a group or family or individually. Diana has been playing the game for years and is easily the best Hopsscotch player on the playground. Her friends have decided to challenge her title by inventing a complicated version of Hopscotch called "Jumpscotch."
In Jumpscotch, a single row of squares is drawn along the ground and a positive integer is drawn inside each square. Starting on the first square, Diana must jump from square to square and finish on the last square. Afterwards, her 'score' is the sum of all numbers which she has touched. The objective of Jumpscotch is to get a lower score than your opponent.
Diana knows that she is only strong enough to hop a certain distance (d). She is also smart enough to know that with this limitation, the best 'path' is not always obvious. Diana wants your help in determining the best path, given each square's value and her maximum hopping distance.
Input
On the first line, the integers n (1 ≤ n ≤ 1,000,000) and d (1 ≤ d ≤ 10).
There will be one test case where Diana has super human strength and d = 5,000 while n = 1,000,000.
The next n lines that follow have positive integers ≤ 1000, representing the number drawn inside each square. These lines are listed, in order, from start to finish.
Output
On a single line, output the smallest possible score that Diana can obtain.
Sample Input
12 3
1
4
2
6
5
1
1
8
7
3
1
2
Sample Output
10
All Submissions
Best Solutions
Point Value: 17 (partial)
Time Limit: 1.00s
Memory Limit: 64M
Added: Oct 20, 2008
Author: DrSane
Languages Allowed:
C++03, PAS, C, HASK, ASM, RUBY, PYTH2, JAVA, PHP, SCM, CAML, PERL, C#, C++11, PYTH3
Comments (Search)
Test case #1: OK [0.080s, 2.6M] (10/10)
Test case #2: OK [0.130s, 2.6M] (10/10)
Test case #3: OK [4.460s, 2.6M] (10/10)
Test case #4: OK [0.090s, 2.6M] (10/10)
Test case #5: OK [0.130s, 2.6M] (10/10)
Test case #6: OK [0.120s, 2.6M] (10/10)
Test case #7: OK [0.210s, 2.6M] (10/10)
Test case #8: OK [9.680s, 2.6M] (10/10)
Test case #9: OK [164.370s, 2.6M] (10/10)
Test case #10: Wrong Answer [70.690s, 2.6M] (0/10) (Details)
I don't think it ran for that long. Could someone help me with last test case ?
These issues may be permanently fixed if we can move to a fully virtualized platform or a dedicated server. However, that is not likely to happen soon, because we are poor students.
Meanwhile, if your program is being "Killed" near 2 s, it probably means TLE.