CF2257E Busy Beaver 先吃完非亏损段,再选一栋楼冲刺 问题 CF2257E Busy Beaver 有 nnn 栋建筑,每栋必须从下往上施工。建第 iii 栋第 jjj 层时先支付 ai,ja_{i,j}ai,j,再获得 bi,jb_{i,j}b 2026-09-07 新记录 > Misc
P13467 Triangle Areas 叉积构造中的商与余数 问题 P13467 [GCJ 2008 #2] Triangle Areas 在 0≤x≤N,0≤y≤M0\le x\le N,0\le y\le M0≤x≤N,0≤y≤M 的整点矩形中,构造三个整点,使 2026-09-07 新记录 > Misc
P16357 Blocks 用中心对称实现每种颜色的平均位置 问题 P16357 [BalticOI 2026] Blocks 有 nnn 个木块、kkk 种颜色,可以任意重排。要求每种颜色所有出现位置的平均值都等于 (n+1)/2(n+1)/2(n+1 2026-09-07 新记录 > Misc
生成树理论 生成树理论 本文基于我个人对生成树的理解:在保留连通性的前提下,尽可能删掉原图里多余的边。 本篇只整理生成树本身的理论。虚拟节点、瓶颈询问、严格次小生成树、特殊边数量限制、隐式完全图等具体问题,放到 生成树题型整理 中继续展开。 一、生成树到底在保留什么 一个有 nnn 个点的连通图,至少需要 n−1n-1n−1 条边才能保持连通。因为每加入一条连接两个不同连通块的边,连通块数量最多减少 111, 2026-08-30 旧算法 > 图论
生成树题型整理 生成树题型整理 生成树本身的理论见 生成树理论。本文整理如何把题目中的条件转化为生成树,以及转化以后应该调用生成树理论中的哪一部分。 一、连通问题 & 生成树 P1195:不一定要连成一棵树 问题 P1195 口袋的天 2026-08-30 旧算法 > 图论
单调队列优化DP模型 单调队列优化DP模型 单调队列优化 DP 本质上,是用数据结构来加速状态转移。具体来说,就是把“每个状态枚举大量前驱”优化成“维护一个单向移动的候选集合”。 所以更重要的是:怎样通过状态设计、代数变形、重新分组或改变坐标,让合法前驱转化成一个可维护的窗口最值问题。 一、P1714 切蛋糕:窗口最值从哪里来 2026-08-29 旧算法 > 动态规划
树上背包模型 树上背包模型 树上背包 是 背包问题 在 树结构 上的一种变体,本质仍然是资源分配问题。一个节点的不同孩子对应若干个相互独立的子问题,而父节点负责决定总资源怎样分配给这些孩子,并合并各子树的最优结果。 最基础的子树状态就是“使用多少资源 →\to→ 取得什么最优结果”。在这个基础上,后面的题目主要讨论两件事:资源可以是什么,以及除了资源数量以外,子树还需要向父节点暴露哪些信息。 一、P2014 选 2026-08-29 旧算法 > 动态规划