[C++] Concise & Clean Bottom-up Solution
Intuition\nThe problem is like Sliding window, if in the window of minJump and maxJump you can find any index from which you can get to the last index, the answ
# Intuition\nThe problem is like Sliding window, if in the window of `minJump` and `maxJump` you can find any index from which you can get to the last index, the answer is `true`\n<!-- Describe your first thoughts on how to solve this problem. -->\n# Complexity\n- Time complexity:\n$$O(n)$$\n<!-- Add your time complexity here, e.g.  -->\n\n- Space complexity:\n$$O(n)$$\n<!-- Add your space complexity here, e.g.  -->\n\n# Code\n```\nclass Solution {\npublic:\n    bool memo[100001] = {};\n    bool canReach(string s, int mn, int mx) {\n        int n = s.size();\n        int possible = 0;\n        memo[0] = 1;\n        for(int i = 1; i < n; i++){\n            possible += i - mn >= 0 && memo[i - mn];\n            possible -= i - mx > 0 && memo[i - mx - 1];\n            memo[i] = !!possible > s[i] - \'0\';\n        }\n        return memo[n - 1];\n    }\n};\n```
['Dynamic Programming', 'Sliding Window', 'C++']