- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
考虑以下形式的收敛级数:
sum(((-1)^n)*something)
其中 n
是迭代的索引(n
从 1
到 infinity
)。
如果我们直接实现公式,我们有 std::pow(-1, n)
但是否有更“快速”的算法技巧来实现它?
最佳答案
检查n
是偶数还是奇数,
(n % 2 == 0) ? 1 : -1;
做到了。如果你想避开一个分支,
1 - 2*(n & 1)
关于c++ - (-1)^n 在 C++ 中求幂,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14177618/
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
我有一个十进制的自然数 x 和一个三进制的自然数 n。如何使用最小乘法次数计算 x^n 的值? 我知道二进制系统的算法,我一直在寻找类比,但没有找到。 最佳答案 也许你需要这样的东西: functio
我怎样才能像在这个 python(使用 sage)代码中那样做: def elGamalDecrypt(c1, c2, p, x): return Mod(c2*c1^(-x),p) 使用标准
我尝试用 Kotlin 编写 Kleisli 求幂: fun kleisli(n: Int, f: (A) -> B): (A) -> B = if (n == 1) f else { it ->
考虑一下: const a = BigInt(2); const b = BigInt(2); const c = a ** b; Babel 会将其转换为: var a = BigInt(2); v
.NET 中内置的 Math.Pow() 函数将一个 double 基数提升为一个 double 指数并返回一个 双结果。 对整数执行相同操作的最佳方法是什么? 补充:似乎可以将 Math.Pow()
语句的含义是什么 // create arrays of 1M elements const int num_elements = 1 #include // this kernel compute
说, 基数 = 2 且 e = 20000.5671 如何在 Java 中执行上述示例的 (base power e)。 显然 Math.pow(base, e) 不是正确的方法,因为它打印的是“In
我是一名优秀的程序员,十分优秀!