当前位置: 首页 > 编程笔记 >

在C ++中找到2 ^(2 ^ A)%B

魏岳
2023-03-14
本文向大家介绍在C ++中找到2 ^(2 ^ A)%B,包括了在C ++中找到2 ^(2 ^ A)%B的使用技巧和注意事项,需要的朋友参考一下

在本教程中,我们将编写一个程序来计算等式2 ^(2 ^ A)%B。

我们将使用递归函数找到方程的值。让我们看看解决问题的步骤。

  • 编写一个带有2个参数A和B的递归函数。

    • 如果A为1,则将4%B返回为2 ^(2 ^ 1)%B = 4%B.

    • 否则用A-1和b递归调用该函数。

    • 返回结果^ 2%B。

  • 打印解决方案

示例

让我们看一下代码。

#include <bits/stdc++.h>
using namespace std;
long long solveTheEquation(long long A, long long B) {
   // 2 ^(2 ^ 1)%B = 4%B
   if (A == 1) {
      return (4 % B);
   }
   else {
      long long result = solveTheEquation(A - 1, B);
      return result * result % B;
   }
}
int main() {
   long long A = 37, B = 467;
   cout << solveTheEquation(A, B) << endl;
   return 0;
}
输出结果

如果执行上述代码,则将得到以下结果。

113

结论

 类似资料:
  • 本文向大家介绍计算三元组(a,b,c)的数量,以使C ++中a ^ 2 + b ^ 2 = c ^ 2和1 <= a <= b <= c <= n,包括了计算三元组(a,b,c)的数量,以使C ++中a ^ 2 + b ^ 2 = c ^ 2和1 <= a <= b <= c <= n的使用技巧和注意事项,需要的朋友参考一下 我们得到一个整数n。目标是找到满足条件的三元组(3个数字一组)- a 2

  • 本文向大家介绍题目 info: { a.b: 1, c: 2 }, 转化为 info2:{ a: { b: 1 }, c: 2 }相关面试题,主要包含被问及题目 info: { a.b: 1, c: 2 }, 转化为 info2:{ a: { b: 1 }, c: 2 }时的应答技巧和注意事项,需要的朋友参考一下 No description provided.

  • 本文向大家介绍系列1 ^ 2 + 3 ^ 2 + 5 ^ 2 +的总和。。。+(2 * n-1)^ 2在C ++中,包括了系列1 ^ 2 + 3 ^ 2 + 5 ^ 2 +的总和。。。+(2 * n-1)^ 2在C ++中的使用技巧和注意事项,需要的朋友参考一下 在这个问题上,我们得到级数n。我们的任务是找到给定n值的序列1 ^ 2 + 3 ^ 2 + 5 ^ 2 + ... +(2 * n-1)

  • 问题内容: 如果我尝试这样做: 我得到以下输出: 演示:http://codepad.org/ncVuJtJu 这是为什么? 我希望将其作为输出: 我的理解: 但是为什么不输出呢? 问题答案: 所有解释为什么得到2而不是1的答案实际上都是错误的。根据PHP文档,混合并以这种方式是不确定的行为,所以你可以得到1或2切换到不同版本的PHP可能会改变你得到的结果,这将是一样有效。 请参阅示例1,其中显示

  • 本文向大家介绍在C ++中找到(1 ^ n + 2 ^ n + 3 ^ n + 4 ^ n)mod 5,包括了在C ++中找到(1 ^ n + 2 ^ n + 3 ^ n + 4 ^ n)mod 5的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将解决以下问题。 给定一个整数n,我们必须找到(1 n +2 n +3 n +4 n)%5 如果n大,则数字(1 n +2 n +3 n +4

  • 指令整数和布尔值。编写一个程序RightTriangle,它接受三个int命令行参数,并确定它们是否构成某个直角三角形的边长。直角三角形以下两个条件是必要和充分的: *每个整数必须为正*两个整数的平方和必须等于第三个整数的平方。 我的尝试: