Stone picking game
Two players take turns picking stones from EITHER end of a row (values given in an array). Each player plays optimally to maximize their own total. Return the first player's score minus the second player's score under optimal play (can be negative). Constraints: 1 <= length <= 1000, -10000 <= each value <= 10000.
Implement
optimal_score_diff(nums: list[int]) → intExamples
in
[[1,5,2]]out-2What a strong answer looks like
State your approach and its time/space complexity out loud before you optimize. Handle the edge cases (empty input, duplicates, overflow), and say why you chose this over the brute force. Green tests are the floor, not the grade.
0:00 of about 30 min
solution.py
InputExpectedGot
[[1,5,2]]-2not run yetsample