在本教程中,我们将讨论一个查找素数长度回文子串数量的程序。我们将提供一个字符串。我们的任务是统计所有是回文且长度为素数的子串。示例 实时演示#include using namespace std; //检查是否为回文 bool if_palin(string str, int i, int j){ while (i < j) { if (str[i] != str[j]) return false; i++; j--; } return true; } //统计素数长度回文子串 int count_prime(string str, int ... 阅读更多
在本教程中,我们将讨论一个查找和能被 k 整除的子数组数量的程序。我们将提供一个数组和一个值 k。我们的任务是找到和等于给定值 k 的子数组的数量。示例 实时演示#include using namespace std; //统计和为 k 的倍数的子数组 int count_subarray(int arr[], int n, int k){ int mod[k]; memset(mod, 0, sizeof(mod)); int cumSum = 0; for (int i = 0; i < n; i++) { cumSum += arr[i]; ... 阅读更多
在本教程中,我们将讨论一个查找矩阵中所有排序行的数量的程序。我们将提供一个 m*n 矩阵。我们的任务是统计给定矩阵中所有按升序或降序排序的行。示例 实时演示#include #define MAX 100 using namespace std; //统计排序的行 int count_srows(int mat[][MAX], int r, int c){ int result = 0; for (int i=0; i
在本教程中,我们将讨论一个查找矩阵中按降序排序的列的数量的程序。我们将提供一个矩阵。我们的任务是统计矩阵中元素按降序排序的列的数量。示例 实时演示#include #define MAX 100 using namespace std; //统计按降序排序的列 int count_dcolumns(int mat[][MAX], int r, int c){ int result = 0; for (int i=0; i0; j--) if (mat[i][j-1] >= mat[i][j]) break; if ... 阅读更多
在本教程中,我们将讨论一个查找范围内最小因子为 K 的数字的程序。我们将提供一个范围 [a,b]。我们的任务是统计给定范围内最小因子为 K 的数字。示例 实时演示#include using namespace std; //检查 K 是否为素数 bool if_prime(int k){ if (k
在本教程中,我们将讨论一个查找积小于 K 的子序列数量的程序。我们将提供一个非负数组和一个值 k。我们的任务是找到数组中所有积小于 k 的子序列。示例 实时演示#include using namespace std; //统计积小于 k 的子序列 //int count_sub(vector &arr, int k){ int n = arr.size(); int dp[k + 1][n + 1]; memset(dp, 0, sizeof(dp)); for (int i = 1; i