题解 | #Skew数#

Skew数

https://www.nowcoder.com/practice/7b6586ac8f614aafbe2e0896e82ac0c1

#include<iostream>
#include<string>
using namespace std;
int D(char a, int n)
{
	int c = 1;
	int temp = a - '0';
	for (int i = 0; i < n; i++)
	{
		c = c * 2;
	}
	temp = temp * (c-1);
	return temp;
}
int main()
{
	string s;
	while (cin >> s)
	{
		if (s == "0")
		{
			return 0;
		}
		else
		{
			int temp = 0;
			int n = s.size();
			for (int i=0; i<n; i++)
			{
				temp += D(s[i], n - i);
			}
			cout << temp << endl;
		}
	}
	return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务