#P2081. 青蛙回家

青蛙回家

题目描述

一只青蛙现在在一个数轴上,它现在要从点 11 跳到点 nn ,它每次可以向右跳不超过 dd 个单位。比如,它可以从点 xx 跳到点 x+ax+a (1<=a<=d)( 1<=a<=d ) 。特别的,青蛙只能在有百合花的点上停留。保证点 11 和点 nn 之间有一些点有百合花。请输出青蛙到达点 nn 的最小跳跃次数。

输入输出格式

输入格式

输入的第一行包括两个正整数 nndd (2<=n<=100,1<=d<=n1)( 2<=n<=100, 1<=d<=n-1 ) 。 输入的第二行是一个长度为 nn 的无空格字符串,由01组成,表示哪些点上有百合花(1表示有)。保证点 11 和点 nn 有百合花。

输出格式

输出青蛙的最小跳跃次数。如果它不可能到达,输出-1。

输入输出样例

样例 #1

样例输入 #1

8 4
10010101

样例输出 #1

2

样例 #2

样例输入 #2

4 2
1001

样例输出 #2

-1

样例 #3

样例输入 #3

8 4
11100101

样例输出 #3

3

样例 #4

样例输入 #4

12 3
101111100101

样例输出 #4

4

说明

在样例1中,青蛙可以从点 11 跳3个单位到点 44 ,再从点 44 跳4个单位到点 88 . 在样例2中,青蛙不能到达点 nn ,因为它至少需要跳3个单位,但它最多只能跳2个单位。