题意:
大概就是给你一串二进制的数,然后让你求log(4)s吧,刚开始找错方向,先把它转成十进制,结果数太大
解决方法:
大概是分析这个数如果正好是4的幂次方的话在二进制的表示里应该只有一个1,所以分析数的长度就可以
#include<bits/stdc++.h> using namespace std; int main(){ string s; cin>>s; for(int i=1;i < s.size();i++){ if(s[i] == '1'){ cout<<(s.size()+1)/2<<endl; return 0; } } cout<<s.size()/2<<endl; return 0; }