题意:给定二进制串,问你化为10进制后,包含几个4的K次方个数。
AC代码:
注意:100000000与1000这种情况就可以了。
#include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; int len = s.size(); int cnt = 0; if(len==1){ cout<<0<<endl; return 0; } if(len==2){ cout<<1<<endl; return 0; } int flag = 0; for(int i = len-1; i >= 1; i--){ if(s[i]=='1'){ flag = 1; } } int i; for(i = len; i >= 1; i -= 2){ cnt++; } if(!flag&&s[0]=='1'&&i<0){ cnt--; cout<<cnt<<endl; }else{ cout<<cnt<<endl; } return 0; }