Jump Game VII is an exciting path-finding challenge! You're given a binary string s where '0' represents safe ground and '1' represents dangerous terrain. Starting at index 0 (which is always '0'), you need to reach the last index of the string.

However, there are jump constraints: from any position i, you can only jump to position j if:
• The jump distance is between minJump and maxJump (inclusive)
• The destination s[j] is '0' (safe ground)

Goal: Return true if you can reach the final index, false otherwise.

Example: s = "011010", minJump = 2, maxJump = 3
From index 0 → can jump to indices 2,3 → from index 3 → can jump to index 5 ✅

Input & Output

example_1.py — Basic Jump
$ Input: s = "011010", minJump = 2, maxJump = 3
Output: true
💡 Note: Starting at index 0, we can jump to index 2 or 3 (both are '0'). From index 3, we can jump to index 5 (which is '0' and the last index). Path: 0 → 3 → 5.
example_2.py — Impossible Jump
$ Input: s = "01101110", minJump = 2, maxJump = 3
Output: false
💡 Note: From index 0, we can reach indices 2 and 3. From index 2, we can reach indices 4 and 5, but both are '1'. From index 3, we can reach indices 5 and 6, but both are '1'. No path exists to reach index 7.
example_3.py — Edge Case
$ Input: s = "0", minJump = 1, maxJump = 1
Output: true
💡 Note: The string has only one character, and we start at index 0, which is already the last index. Therefore, we can reach the end.

Constraints

  • 1 ≤ s.length ≤ 105
  • s[i] is either '0' or '1'
  • s[0] == '0'
  • 1 ≤ minJump ≤ maxJump < s.length

Visualization

Tap to expand
River Stone Hopping Challenge0START10010GOALSliding Window TechniqueEfficiently track reachable stonesin valid jumping range🎯 Key Insight: Use sliding window to track reachable positions in O(1) per step
Understanding the Visualization
1
Survey the River
Identify safe stones ('0') and dangerous stones ('1')
2
Track Jump Range
Maintain awareness of positions we can reach with current jump limits
3
Make Optimal Jumps
Use sliding window to efficiently determine next reachable positions
4
Reach the Goal
Successfully cross if we can reach the final stone
Key Takeaway
🎯 Key Insight: The sliding window technique transforms an O(n²) problem into O(n) by efficiently maintaining a count of reachable positions within the valid jumping range, avoiding redundant position checks.
Asked in
Google 32 Amazon 28 Meta 24 Microsoft 18
67.2K Views
Medium Frequency
~25 min Avg. Time
1.8K Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen