[Beginner Free Contest 41] LBIN

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Xâu nhị phân là một chuỗi gồm các kí tự 0 và 1, ví dụ như 010110, 1, 11101. Tèo được Tí cho một xâu nhị phân ~S~ không chứa các số ~0~ ở đầu. Tèo muốn chuyển đổi xâu ~S~ này thành một số thập phân bằng máy tính của cậu ta.

Tuy nhiên, do Tèo mua phải máy tính giảm giá rẻ trên mạng nên máy chỉ có thể chuyển đổi được các số không vượt quá ~K~. Vì vậy Tèo cần xóa đi một vài kí tự trong ~S~ (có thể không xóa kí tự nào) mà vẫn giữ nguyên thứ tự của các kí tự còn lại, sao cho biểu diễn thập phân của xâu kết quả không vượt quá ~K~. Xâu sau khi xóa cũng không được chứa các chữ số ~0~ ở đầu.

Bạn hãy giúp Tèo tính xem cần phải bỏ đi ít nhất bao nhiêu kí tự trong ~S~ để thỏa mãn điều kiện trên.

Dữ liệu

  • Dòng đầu tiên gồm số nguyên dương ~K~ ~(1 \le K \le 2^{60})~ là giới hạn của máy tính.

  • Dòng thứ hai gồm xâu ~S~ ~(1 \le |S| \le 60)~ là xâu mà Tèo nhận được. Đảm bảo xâu ~S~ không bắt đầu bằng các chữ số ~0~.

Kết quả

  • Gồm một dòng duy nhất là số kí tự ít nhất cần loại bỏ trong ~S~.

Ví dụ

Sample Input 1

13
1100101

Sample Output 1

3

Sample Input 2

13
1111111

Sample Output 2

4

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.