码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【7.21-26】代码源 - 【体育节】【丹钓战】【最大权值划分】


    #668. 体育节

    题意:给定序列,你需要重排列序列,使得序列的前缀极值差的和最小,输出这个最小值。 ( n ≤ 2000 ) (n\leq 2000) (n≤2000)

    题解:(区间dp) 代码源每日一题 Div1 体育节

    思路:我们思考一下,现在有一个排好的序列,我们插入一个会成为序列极值的元素,那么放在哪里贡献最小?是放在最后。因为如果放在中间,会影响后面前缀的极值差。对于不会成为序列极值的元素,我们不考虑插入策略。

    那么我们排一下序,从每个点向外扩展,扩展到的一定是极值点。定义 d p ( i , j ) dp(i,j) dp(i,j) 为区间 [ i , j ] [i,j] [i,j] 的最小前缀极值差和,采用向外拓展的区间 DP, d p ( i , j ) = a j − a i + max ⁡ ( d p ( i + 1 , j ) , d p ( i , j − 1 ) ) dp(i,j)=a_j-a_i+\max(dp(i+1,j),dp(i,j-1)) dp(i,j)=aj​−ai​+max(dp(i+1,j),dp(i,j−1))

    一些区间 DP 的题(枚举中断点,以及区间合并):区间dp

    AC代码:http://oj.daimayuan.top/submission/299976


    #702. 丹钓战

    题意: ( n , q ≤ 5 × 1 0 5 ) (n,q\leq 5\times 10^5) (n,q≤5×105)

    在这里插入图片描述

    题解:(单调栈/树状数组)代码源每日题意 Div1 丹钓战

    思路:因为一个元素是好的当且仅当扫描后栈中仅有一个元素。那么我们模拟一下,然后处理出来栈扫到每个元素之后,栈顶的次元素下标。现在给我们一个区间,如果我们希望某个元素是好的,那么我们希望这个次元素没有在这个区间内,那么下面所有的元素都不会出现,这个元素就是好的。

    预处理出来每个元素的次元素下标后,问题转化为区间求有多少个数小于给定数,经典离线树状数组问题。

    AC代码:http://oj.daimayuan.top/submission/301595


    #709. 最大权值划分

    题意:对于一段序列,定义这段序列的权值为这段序列的极差,即序列的最大值与最小值之差。给定一个序列 a a a ,你可以将它划分成任意段连续的序列,求出每一段的权值和的最大值。 ( n ≤ 1 0 6 ) (n\leq 10^6) (n≤106)

    题解:(DP)代码源每日一题 Div1 最大权值划分

    思路:首先容易想到把序列贪心分块为 LIS 和 LDS 计算,然而很容易 wa。我们可以 DP,定义 d p ( i ) dp(i) dp(i) 表示前 i i i 个数的最大值,然而发现转移是和上个数位于 LIS 或 LDS 有关的,因此再开一维用来区分。定义 d p ( i , j ) dp(i,j) dp(i,j) 表示前 i i i 个数的最大值,且当 j = 0 / 1 j=0/1 j=0/1 表示 a i a_i ai​ 位于下降 / 上升序列。

    AC代码:http://oj.daimayuan.top/submission/302950

  • 相关阅读:
    Linux.定时任务crontab
    springmvc中异步转同步
    冥想第五百一十六天
    网络程序设计——VC的多线程编程(线程与进程)
    WMS系统后端开发-用户权限
    JVM内存设置与查看
    printf 是怎么舍入的
    Rust 构建 TCP/UDP 网络服务
    django setting.py中的SECRET_KEY
    RestCloud ETL WebService数据同步到本地
  • 原文地址:https://blog.csdn.net/weixin_51948235/article/details/126005275
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号