#include<iostream> #include<vector> using namespace std; int help(vector<int> vt) { vector<int> tmp{1,2,4,8,16,32,64,128}; for (int i = 8; i >= 0; --i) { if (vt[i]>1) { return (2 << i) - 1; } else { if (vt[i] == 1) { int ans = (2 << i); int j = i - 1; while (j >= 0 && vt[j] <= 1) { if (vt[j] == 0) ans -= tmp[j]; j--; } return ans-1; } } } return 0; } int main() { unsigned long long n; while (cin >> n) { vector<int> vt(10, 0); int i = 0; while (n) { vt[i++] = n % 10; n /= 10; } if (vt[9] == 1) { cout << 512 << endl; } else{ cout << help(vt) << endl; } } return 0; }
点赞 评论

相关推荐

点赞 评论 收藏
分享
秋盈丶:后续:我在宿舍群里和大学同学分享了这事儿,我好兄弟气不过把他挂到某脉上了,10w+阅读量几百条评论,直接干成精品贴子,爽
点赞 评论 收藏
分享
牛客网
牛客企业服务