问题 CJ: zz的处理器

内存限制:256 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:85 通过:53

题目描述

     随着中美在高科技领域的竞争,中国碰到了很多卡脖子工程,其中的“处理器”问题就是卡脖子工程之一,ZZ立志要攻克这个大问题。


    ZZ正在测试下一代处理器。处理器由编号为1到n的、n二进制数组成二进制数采用以下存储规则:最低位存储在二进制数的第一个位中,下一位存储在第二个位中,依此类推,最高位存储在第 n 位中。 即最右边是最高位,最左边是最低位。

    现在,zz想要测试以下指令:二进制数的值加1”操作,zz想知道操作后二进制数有多少位将会改变?

输入格式

第一行包含单个整数n1≤n≤100) : 二进制数的位数。

第二行包含一个由n个字符组成的字符串 : 二进制数的初始状态。第一个字符表示二进制第一个位的状态。第二个字符表示第二个最低有效位,依此类推。最后一个字符表示最高有效位的状态。

输出格式

输出二进制数中在我们向二进制数添加 1 后更改其状态的位数

输入样例1

4

1100

输出样例1

3

输入样例2

4

1111

输出样例2

4



注意
在第一个样本中,从左加到右加1。第一位的1+1=2,产生进位1,;第二位的1+进位1=2,产生进位;第三位的0+进位1=1,运算结束,共产生3次进位操作。

输入样例 复制

4
1100

输出样例 复制

3