题意:
按照这个公式模拟
10120skew = 1×(25 −1)+0×(24 −1)+1×(23 −1)+2×(22 −1)+0×(21 −1) = 31+0+7+6+0 = 44.
#include<iostream>
#include <stdio.h>
#include <memory.h>
#include<queue>
#include<math.h>
using namespace std; int main()
{
freopen("d:\\1.txt", "r", stdin);
string str;
while (cin >> str)
{
int length = str.length();
if(length == 1 && str[0] == '0')
return 0;
int total = 0;
for(int i = length - 1; i >= 0; i--)
{
total += (str.at(i) - '0') * (pow(2, length - i) - 1);
}
cout<<total<<endl;
}
return 0;
}