首页 > 后端开发 > C++ > 正文

所有可能的N位数和基数B,但不包括前导零的数字

王林
发布: 2023-08-29 21:57:06
转载
624 人浏览过

所有可能的N位数和基数B,但不包括前导零的数字

在这里,我们将看到一个问题,我们有N和基数B。我们的任务是计算基数为B的N位数,没有前导0的所有数字的数量。所以如果N是2,B是2,那么会有四个数字00、01、10、11。所以只有其中两个数字对这个部分有效。它们是10、11,没有前导0。

如果基数是B,那么有0到B-1个不同的数字。所以可以生成B^N个不同的N位数(包括前导0)。如果我们忽略第一个数字0,那么有B^(N-1)个数字。所以没有前导0的总共N位数是B^N - B^(N-1)

算法

countNDigitNum(N, B)

Begin
   total := B<sup>N</sup>
   with_zero := B<sup>N-1</sup>
   return BN &ndash; B<sup>N-1</sup>
End
登录后复制

Example

的中文翻译为:

示例

#include <iostream>
#include <cmath>
using namespace std;
int countNDigitNum(int N, int B) {
   int total = pow(B, N);
   int with_zero = pow(B, N - 1);
   return total - with_zero;
}
int main() {
   int N = 5;
   int B = 8;
   cout << "Number of values: " << countNDigitNum(N, B);
}
登录后复制

输出

Number of values: 28672
登录后复制

以上是所有可能的N位数和基数B,但不包括前导零的数字的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板