#include <iostream>
#include<cmath>
using namespace std;
int main() {
string str;
while (cin >>str) { // 注意 while 处理多个 case
long long result=0;
for(int i=str.size()-1;i>=0;i--)
{
if(str[i]=='0')
continue;
else if(str[i]=='1'||str[i]=='2')//k=str.size-i
result+=((str[i]-'0')*(pow(2,str.size()-i)-1));
}
cout<<result<<endl;
}
}
// 64 位输出请用 printf("%lld")
应该属于高精度?

京公网安备 11010502036488号