首页 > 其他分享 >套路

套路

时间:2023-03-27 11:33:59浏览次数:28  
标签:套路 往右 最小值 端点 区间 单调

求区间最小值之和

动态规划+单调栈

我们定义 \(f_i\) 为所有以 \(i\) 为右端点的区间的最小值之和,用单调栈的方法来寻找左边最远的距离,使得区间内 \(A_i\) 是最小值。假设用单调栈找到了左边第一个比 \(A_i\) 小的数是 \(A_j\) ,那么 \(f_i\) 就可以加上 \((i - j) * A_i\) ,因为 \(A_j\) 往右都是 \(A_i\) 最小。而 \(A_j\) 往左的这些区间最小值等价于直接以 \(A_j\) 为右端点的最小值,因为 \(A_j\) 往右的数都比它大,没有影响,所以 \(f_i\) 再加上 \(f_j\) 就行了。
\(\sum_{i=1}^{n} f_i\)即为答案。

code
for (int i = 1; i <= n; i ++ )
{
    while (top && a[i] <= a[stk[top]]) top -- ;
    stk[ ++ top] = i;
    f[i] += (i - stk[top - 1]) * a[i] + f[stk[top - 1]];
}

标签:套路,往右,最小值,端点,区间,单调
From: https://www.cnblogs.com/kroyosh/p/17260993.html

相关文章

  • Mybatis源码阅读套路(转载)
    前言前提是我们需要对整个Mybatis的原理、工作流程和模块进行一个整体的直知晓,另外还要有使用经验。源码下载进入官网https://mybatis.org/mybatis-3/zh/index.html......
  • QQZone的review以及当前开发项目的套路
    资料来源于:B站尚硅谷JavaWeb教程(全新技术栈,全程实战),本人才疏学浅,记录笔记以供日后回顾视频链接重点知识1.http://localhost:8080/pro23/page.do?operate=page&pa......
  • [总结]部分套路总结
    前言:套路题做不出来,但机房巨巨能一眼秒,遂决定写这个。看见“互质”想分解质因数,一个数中大于根号倍的质因数不会超过一个。例:P8292,0308考试题。......
  • 套路满满!不懂缓外速度就别买SSD
    固态硬盘早已成为主流配置单的必选硬件,在价格战愈演愈烈的环境下,300元以下的1TB固态也层出不穷,如果直觉告诉你便宜的固态硬盘有猫腻,那么这次你的直觉是对的,问题就在缓外速......
  • 华为测试岗上岸,月入20K,面试无非就是这些套路!
     软件测试工程师,和开发工程师相比起来,虽然前期可能不会太深,但是涉及的面还是比较广的。涉及的知识主要有MySQL数据库的使用、Linux操作系统的使用、软件测试框架性......
  • 分析总结一下所有有关打印题目的套路和思路:pat乙级:1109 擅长C, 1008元素循环右移,1050
    分析:首先你要明白第一件事:所有要打印东西的题目打印都是从第一行到最后一行,从第一列到最后一列,你是没办法跳着打印的。可以看看其他几个打印题目1008元素循环右移,1050螺......
  • canoe和python_给CANoe编程上点套路 – CAPLdll
    canoe和python_给CANoe编程上点套路–CAPLdllweixin_39585974于2020-12-2222:19:59发布734收藏8文章标签:canoe和python版权汽车电子攻城狮:“数据处理算法有点复......
  • 25、完整模型训练套路-----torch.train()-----torch.eval()
    1、在训练、测试步骤开始的时候   并不是一定要设置训练或者测试模式才能开始训练,如果网络模型中有特殊的层可以调用,但是如果没有,调用也不会出错的。   ......
  • LeetCode 周赛 332,在套路里摸爬滚打~
    本文已收录到AndroidFamily,技术和职场问题,请关注公众号[彭旭锐]提问。大家好,今天是3T选手小彭。上周是LeetCode第332场周赛,你参加了吗?算法解题思维需要长时间......
  • 非肿瘤领域的生信例文:干湿结合的生信套路
    一直以来都传言肿瘤的生信文章容易发,但对非肿瘤来说就很不友好。非肿瘤有利有弊。弊端是数据集少且无临床数据可扒;利处是我们可以把肿瘤生信文章的套路运用到非肿瘤领域中......