首页 > 后端开发 > C++ > 正文

C++程序:计算将索引小于值的元素放置所需的操作次数

WBOY
发布: 2023-09-08 21:53:06
转载
773 人浏览过

C++程序:计算将索引小于值的元素放置所需的操作次数

假设我们有一个包含 n 个元素的数组 A。我们可以多次执行这些操作 -

  • 选择任何正整数 k

  • 选择任何位置并在该位置插入k

  • 这样,序列就改变了,我们在下一个操作中继续这个序列。

  • ul>

    我们必须找到满足条件所需的最少操作数:对于 0 到 n-1 范围内的所有 i,A[i]

    因此,如果输入是比如 A = [1, 2, 5, 7, 4],那么输出将为 3,因为我们可以执行如下操作: [1,2,5,7,4] 到 [1,2,3,5 ,7,4] 到 [1,2,3,4,5,7,4] 到 [1,2,3,4,5,3,7,4]。

    步骤 h2>

    为了解决这个问题,我们将按照以下步骤操作 -

    maxj := 0
    n := size of A
    for initialize i := 0, when i < n, update (increase i by 1), do:
       maxj := maximum of maxj and (A[i] - i - 1)
    return maxj
    登录后复制

    示例

    让我们看一下以下实现以获得更好的理解 −

    #include <bits/stdc++.h>
    using namespace std;
    
    int solve(vector<int> A) {
       int maxj = 0;
       int n = A.size();
       for (int i = 0; i < n; i++) {
          maxj = max(maxj, A[i] - i - 1);
       }
       return maxj;
    }
    int main() {
       vector<int> A = { 1, 2, 5, 7, 4 };
       cout << solve(A) << endl;
    }
    登录后复制

    输入

    { 1, 2, 5, 7, 4 }
    登录后复制

    输出

    3
    登录后复制

以上是C++程序:计算将索引小于值的元素放置所需的操作次数的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!