#P1236. 跳跃游戏
跳跃游戏
题目描述
给你一个下标从 0 开始的二进制字符串 s 和两个整数 l 和 r 。l 为跳跃的最小距离,r 为跳跃的最大距离,一开始,你在下标 0 处,且该位置的值一定为 '0' 。当同时满足如下条件时,你可以从下标 i 移动到下标 j 处:
i + l <= j <= min(i + r, s.length() - 1) 且 s[j] == '0'。
(s.length() 为字符串 s 的长度)
输入格式
第 1 行为二进制字符串 s。
第 2 行为两个正整数 l 和 r ,分别表示跳跃的的最小距离和最大距离。
输出格式
若能到达 s.length() - 1 处,输出 true,否则输出 false。
样例1
011010
2 3
true
样例解释
第一步,从下标 0 移动到下标 3 。 第二步,从下标 3 移动到下标 5。
样例2
01101110
2 3
false
数据范围
2 ≤ s.length()≤ 1000000(字符串 s 中只包含'0'和'1',数据保证s[0]的值一定为0);
1 ≤ l ≤ r < s.size()。
提示
编程时可以使用s.length()或 s.size() 获取字符串 s 的长度 ;