Chgtaxihe's blog Chgtaxihe's blog
首页
练习
算法学习
读书笔记
小玩意

Chgtaxihe

首页
练习
算法学习
读书笔记
小玩意
  • 数论

  • 动态规划

  • 暴力

  • 图论

  • 数据结构

  • 字符串

  • 几何

  • 博弈论

  • 其他

    • 01分数规划学习笔记
    • CDQ分治学习笔记
    • wqs二分学习笔记
    • 一两句话小技巧
    • 单调性应用学习笔记
      • 斜率优化
      • 凸壳
        • 例题 Codeforces 573E
    • 哈希函数(Hash)函数的设计
    • 带权并查集处理线段
    • 环检测算法学习笔记
    • 约瑟夫环学习笔记
    • 组合情况
    • 高效位运算

单调性应用学习笔记

# 单调性的应用

# 斜率优化

通常是维护一个一阶导单调递增/递减的序列,单调队列的最后一个元素即为最优解

# 凸壳

已知xi,bix_i,b_ixi​,bi​,每次询问给定一个k(k>0)k(k>0)k(k>0),对于yi=kxi+biy_i=kx_i+b_iyi​=kxi​+bi​,求使得yiy_iyi​最大的iii

首先,直觉告诉我们,如果i<ji<ji<j且xi<xj,bi<bjx_i<x_j,b_i<b_jxi​<xj​,bi​<bj​,那么iii一定不是最优解,可以把iii去掉

接下来我们考虑3条直线之间的关系

图例

# 例题 Codeforces 573E

分块,并对每一个块维护一个凸包,遇到要更新的块,直接暴力重建凸包

上次更新: 2021/02/24, 03:37:30
一两句话小技巧
哈希函数(Hash)函数的设计

← 一两句话小技巧 哈希函数(Hash)函数的设计→

最近更新
01
深入理解Java虚拟机
03-04
02
DNS工作原理
02-27
03
改用VuePress啦
02-23
更多文章>
Theme by Vdoing | Copyright © 2019-2021
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式