题意:
给你一个2进制数,求这个2进制数在10进制中的 $ 4^i $ 的个数。
解法:
其实就是 $ \ulcorner_{\log_4^S} \urcorner $ 。
然后通过换底公式得 $ \ulcorner_{\frac{\log_2^S}{2}} \urcorner $ 。
找规律。。。
CODE:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define LL long long
char ch[110];
int ans,cnt;
int main() {
scanf("%s",ch + 1);
int len = strlen(ch + 1);
for(int i = 1 ; i <= len ; i++)
cnt += ch[i] - '0';
if(cnt == 0) {
puts("0");
return 0;
}
else if(cnt == 1) ans = len / 2;
else ans = (len + 1) / 2;
printf("%d \n",ans);
//system("pause");
return 0;
}