找到 34423 篇文章 关于编程

C++ 中填充 K 个杯子所需的最小瓶数

Narendra Kumar
更新于 2019-11-22 10:06:15

1K+ 次查看

问题陈述给定 N 个装有水的杯子,以及每个杯子的容量列表。任务是找到填充正好 K 个杯子所需的最小瓶数。每瓶的容量为 100 个单位。示例如果 N = 5,K = 4,capacity[] = {1, 2, 3, 2, 1}。填充容量为 2、3、2 的杯子需要 8 个单位。这样,只需打开 1 瓶就足够了。算法要填充正好 K 个杯子,请取 K 个容量最小的杯子所需总瓶数可以计算为 - (前 k 个杯子容量之和)/(瓶的容量...)的上限值。... 阅读更多

C++ 中使字符串成为回文串所需的最小追加次数

Narendra Kumar
更新于 2019-11-22 10:01:29

346 次查看

问题陈述给定一个字符串,找到要追加的最小字符数以使其成为回文串。示例如果字符串是 abcac,那么我们可以通过追加 2 个高亮字符(即 abcacba)来使字符串成为回文串算法检查字符串是否已经是回文串,如果是,则无需追加任何字符。一次删除字符串中的一个字符,并检查剩余字符串是否为回文串重复上述过程,直到字符串变成回文串将迄今为止删除的字符数作为最终答案返回示例#include #include using namespace std; bool isPalindrome(char *str) {    int n = strlen(str);    if (n == 1) {   ... 阅读更多

C++ 中使所有字符串相等所需的最小移至末尾操作次数

Narendra Kumar
更新于 2019-11-22 09:56:34

352 次查看

问题陈述给定 n 个彼此互为排列的字符串。我们需要通过一个操作使所有字符串都相同,该操作将任何字符串的第一个字符移到其末尾。示例如果 arr[] = {“abcd”, “cdab”},则需要 2 次移动。让我们取第一个字符串“abcd”。将字符‘a’移到字符串的末尾。此操作后,字符串变为“bcda”现在将字符‘b’移到字符串的末尾。此操作后,字符串变为“cdab”。这反过来使两个字符串相等算法取第一个字符串。让我们将其称为‘str1’。通过将 str1 连接到 str1 创建一个临时字符串作为... 阅读更多

C++ 中使所有 1 在左侧和所有 0 在右侧所需的最小翻转次数

Narendra Kumar
更新于 2019-11-22 09:52:57

311 次查看

问题陈述给定一个二进制字符串,其中我们可以翻转左侧的所有 1 和右侧的所有 0。任务是计算使所有 1 在左侧和所有 0 在右侧所需的最小翻转次数示例给定二进制字符串为 0010101。在此字符串中,有 3 个 1 位和 4 个 0 位。我们必须翻转高亮的 4 位以使所有 1 在左侧,所有 0 在右侧,如下所示 - 0010101翻转后字符串将变为 - 1110000算法从左到右遍历字符串并计算将所有 0 转换为 1 所需的翻转次数。遍历... 阅读更多

C++ 中给定底边和面积的三角形的最小高度

Narendra Kumar
更新于 2019-11-22 09:49:26

221 次查看

描述给定两个整数 a 和 b,找到最小的可能高度,使得至少面积为‘a’且底边为‘b’的三角形可以形成。示例如果 a = 16 且 b = 4,则最小高度为 8算法可以使用以下公式计算三角形的面积 - area = ½ * height * base使用上述公式,高度可以计算为 - height = (2 * area) / base因此最小高度是使用上述公式获得的高度的天花板()。示例#include #include using namespace std; float minHeight(int area, int base) {    return ceil((2 * area) / base); } int main() {    int area = 16, base = 4;    cout

C 语言硬币找零

sudhir sharma
更新于 2019-11-22 09:28:52

3K+ 次查看

在这个问题中,我们给定一个值 n,我们想要找零 n 元,我们有 n 个硬币,每个硬币的值范围从 1 到 m。我们必须返回找零的总方法数。示例输入:N = 6;coins = {1, 2, 4}。输出:6解释:构成 6 的总组合为:{1, 1, 1, 1, 1, 1};{1, 1, 1, 1, 2};{1, 1, 2, 2};{1, 1, 4};{2, 2, 2};{2, 4}。示例#include ... 阅读更多

C/C++ Dijkstra 最短路径算法程序

sudhir sharma
更新于 2023-11-08 00:13:33

26K+ 次查看

给定一个图及其中的源顶点。我们必须找到从源顶点到图中所有其他顶点的最短路径。Dijkstra 算法是一种贪心算法,用于查找从图的源顶点到图的根节点的最短路径。算法步骤 1:创建一个集合 shortPath 来存储最短路径树路径上的顶点。步骤 2:将所有距离值初始化为 INFINITE,并将源顶点的距离值分配为 0,以便... 阅读更多

C++ 中的二项式系数

sudhir sharma
更新于 2019-11-22 09:22:57

6K+ 次查看

二项式系数表示为 c(n, k) 或 ncr,定义为 (1+X)n 的二项式展开式中 xk 的系数。二项式系数也给出从 n 个对象中选择 k 个项目的数量,即 n 元素集的 k 组合。项目的选择顺序不考虑。这里,我们给定两个参数 n 和 k,我们必须返回二项式系数 nck 的值。示例输入:n = 8 和 k = 3 输出:56这个问题可能有几种解决方案,一般解决方案有一种方法可以计算值... 阅读更多

C 程序中使用递归将二进制转换为格雷码

sudhir sharma
更新于 2020-07-09 11:49:04

2K+ 次查看

二进制数是一个只有两个位 0 和 1 的数。格雷码是一种特殊的二进制数,它具有一个特性,即代码的两个连续数之间的差异不能超过一位。格雷码的这一特性使其在 K 映射、纠错、通信等方面更有用。这使得二进制到格雷码的转换变得必要。因此,让我们看看一种使用递归将二进制转换为格雷码的算法。示例让我们以格雷码为例输入:1001 输出:1101算法步骤 1:对输入 n 执行以下操作:    步骤 1.1:如果 n ... 阅读更多

C程序中不使用浮点数进行有理数二分查找

sudhir sharma
更新于 2019年11月22日 09:16:45

浏览量 182

在本问题中,我们给定一个排序的有理数数组。我们必须使用二分查找算法为此有理数数组搜索给定元素,而不使用浮点运算。有理数是以 p/q 的形式表示的数,其中 p 和 q 都是整数。例如,⅔、⅕。二分查找是一种搜索技术,它通过查找数组的中间位置来查找元素。为了从排序的有理数数组中使用二分查找查找元素,其中不允许使用浮点运算。我们将比较分子和分母来查找... 阅读更多

广告

© . All rights reserved.