给定一些整数N,有多少个碱基b,使得N的base-b表示以1开始?

时间:2016-12-23 17:00:11

标签: c math

这个问题在codechef竞赛中提出。我在c中尝试过。以下是我的代码:

install_github("marmap","ericpante")
Skipping install of 'marmap' from a github remote, the SHA1 (3e62fc8d) has not changed since last install.
  Use 'force = TRUE' to force installation
Warning message:
Username parameter is deprecated. Please use ericpante/marmap

但这只给了我一些分数。可以在较短的时间内解决吗?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:1)

基数为this.$onInit = () => { vm.eventslog = vm.data; } 的前导1和d数字的最小数字为b 10...0

最大的这个数字是b^(d-1)。因此,给定数字2*b^(d-1)-1落在该范围内的基数由不等式

给出
N

通过适当的舍入,考虑到随机浮点错误,您可以直接计算这些边界内有多少整数pow(0.5*(N+1), 1.0/(d-1) ) <= b <= pow(N, 1.0/(d-1) )