[GESP2603三级] ⼆进制回⽂串

进制+回文
#include <bits/stdc++.h>
using namespace std;
string tento2(int i){
    string ans;
    while(i!=0){
        int ys=i%2;
        ans+=to_string(ys); // 111000
        i/=2;
    }
    return ans;
}
bool ishuiwen(string s){
    string t=s; // 123
    reverse(t.begin(),t.end());  // 倒序
    return t==s;
}
int main(){
    int n;
    cin>>n;
    int ans=0;
    for(int i=1;i<=n;i++){
        string k=tento2(i);
        if(ishuiwen(k)){
            ans++;
        }
    }
    cout<<ans;
    return 0;
}