在本教程中,我们将编写一个程序来找出 ab 和 ba 中较大的数。这是一个直接了当的问题。让我们看看解决问题的步骤。初始化 a 和 b 的值。取两个值的 log。计算 $b\:\log\:a$ 和 $a\:\log\:b$ 的值。比较这两个值。如果 $a\:\log\:b$ 大于 $b\:\log\:a$,则打印 ba 更大。如果 $b\:\log\:a$ 大于 $a\:\log\:b$,则打印 ab 更大。否则打印两者相等。示例让我们看看代码。 在线演示#include using namespace std; int main() { int a = 4, b = 7; long double x = (long double) a ... 阅读更多
在本教程中,我们将编写一个程序来查找拉格朗日插值公式的结果。您无需编写任何程序逻辑。只需将公式转换为代码。让我们看看代码。示例 在线演示#include using namespace std; struct Data { int x, y; }; double interpolate(Data function[], int xi, int n) { double result = 0; for (int i = 0; i < n; i++) { double term = function[i].y; for (int j = 0; j < n; j++) { if (j != i) ... 阅读更多
在本教程中,我们将学习拉格朗日四平方和定理。拉格朗日四平方和定理指出,每个自然数都可以写成 4 个数的平方和。以下代码查找满足给定数字 n 的上述条件的 4 个数字。示例让我们看看代码。 在线演示#include using namespace std; void printSquareCombinations(int n) { for (int i = 0; i * i
在本教程中,我们将找到每次插入后的第 k 小元素。我们将使用最小堆来解决这个问题。让我们看看完成程序的步骤。用随机数据初始化数组。初始化优先队列。直到 k - 1 之前,不会有任何第 k 小的元素。因此,打印您喜欢的任何符号。编写一个循环,从 k + 1 迭代到 n。打印最小堆的根。如果元素大于最小堆的根,则弹出根并插入元素。示例让我们看看代码。 在线演示#include using namespace std; void findKthSmallestElement(int ... 阅读更多
在本教程中,我们将编写一个程序来查找大于给定数字 n 的第 k 个素数。初始化数字 n。找到直到 1e6 的所有素数并将它们存储在一个布尔数组中。编写一个循环,从 n + 1 迭代到 1e6。如果当前数字是素数,则递减 k。如果 k 等于零,则返回 i。返回 -1。示例让我们看看代码。 在线演示#include using namespace std; const int MAX_SIZE = 1e6; bool prime[MAX_SIZE + 1]; void findAllPrimes() { memset(prime, true, sizeof(prime)); for (int p = 2; p * p ... 阅读更多
在本教程中,我们将编写一个程序来查找给定数组中的第 k 个奇数。让我们看看解决问题的步骤。初始化数组和 k。遍历数组。如果当前元素是奇数,则递减 k 的值。如果 k 为 0,则返回当前元素。返回 -1。示例让我们看看代码。 在线演示#include using namespace std; int findKthOddNumber(int arr[], int n, int k) { for (int i = 0; i