题意:
给你n位的二进制数,从低位到高位。现在在低位上加1问你改变了多少位。
思路:
直接从低位开始枚举到0停止,因为遇到1肯定产生进位。
#include<cstdio>
const int MAX=105;
char s[MAX];
int n;
int main(){
scanf("%d",&n);
scanf("%s",s);
int i;
for(i=0;i<n;i++){
if(s[i]=='0') break;
}
if(i!=n) i++;
printf("%d\n",i);
return 0;
}