本文主要是介绍uva 575 Skew Binary(位运算),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
求第一个以(2^(k+1)-1)为进制的数。
数据不大,可以直接搞。
代码:
#include <stdio.h>
#include <string.h>
const int maxn = 100 + 5;int main()
{char num[maxn];while (scanf("%s", num) == 1){if (num[0] == '0')break;int len = strlen(num);int sum = 0;int t = 2;for (int i = len - 1; i >= 0; i--){sum += (t - 1) * (num[i] - '0');t <<= 1;}printf("%d\n", sum);}return 0;
}
这篇关于uva 575 Skew Binary(位运算)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!