Ếch con đang ngồi trên một bông hoa sen. Những lá sen và hoa sen xếp thành một hàng theo trục . Ếch đang ngồi ở điểm có tọa độ là , nhà của ếch ở điểm có tọa độ .
Ếch có thể nhảy sang phải một khoảng cách không quá . Tức là từ điểm , ếch có thế nhảy đến điểm với là số nguyên từ đến .
Với mỗi điểm từ đến có chứa lá sen hoặc hoa sen. Ếch thích hoa nên chỉ nhảy đến những điểm mà tại đó là hoa sen, những điểm mà tại đó là lá sen ếch sẽ không chịu nhảy. Input đảm bảo điểm và điểm chứa hoa sen.
Xác định số bước ít nhất ếch cần nhảy từ vị trí để về đến nhà ở vị trí . Nếu ếch không nhảy được về nhà, in ra .
Input
Dòng đầu tiên chứa 2 số nguyên và lần lượt là tọa độ nhà của ếch và khoảng cách tối đa mỗi bước nhảy của ếch.
Dòng thứ 2 chứa chuỗi có độ dài gồm các ký tự và . Nếu một ký tự ở chuỗi bằng thì ở vị trí tương ứng có chứa lá sen, ngược lại nếu bằng thì ở vị trí tương ứng có chứa hoa sen. Input đảm bảo ký tự đầu tiên và ký tự cuối cùng của chuỗi bằng .
Output
Nếu ếch không thể về nhà, in ra .
Trong trường hợp có thể về nhà được, in ra số lần nhảy ít nhất mà ếch cần nhảy để về nhà.
Example 1
Sample Input 1
Copy
8 4
10010101
Sample Output 1
Copy
2
Giải thích: Ếch nhảy từ điểm đến điểm , sau đó nhảy đến điểm là tới nhà. Số bước nhảy ít nhất là .
Example 2
Sample Input 2
Copy
4 2
1001
Sample Output 2
Copy
-1
Example 3
Sample Input 3
Copy
12 3
101111100101
Sample Output 3
Copy
4
Comments
Chắc phải làm bài lại là còn
Greedy or Breadth First Search or Dynamic Programming