博弈论(奇偶考虑法)+计数+DP(判定转DP):CF838C
博弈论(奇偶考虑法)+计数+DP(判定转dp):CF838C 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133362167 首先题目有博弈,先分析一波最优策略(步骤:分析性质)。 两个人,所以显然考虑奇偶考虑法+递归考虑。 首先删就是使子问题-1,重新排列是在当前子问题里的。 一个串的排列是有限的,所以这里就可以上奇偶考虑法。如果有偶数种串,则必然是后手先“被迫“进入子问题(要算上初始情况) 考虑假设法:我们可以先假设进入子问题: 必赢。先手进! ...
拆贡献与期望本质:CF1392H
拆贡献与期望本质:CF1392H 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133355060 题目问牌数,但其实题面有另一个很明显的东西叫轮数 而如果我们每一轮单独考虑,其对应的期望牌数是确定的。 我们肯定会大胆考虑直接用期望牌数乘期望轮数,但为什么对? 每轮牌数乘上前 i−1i-1i−1 轮未结束的的概率,后面的概率是第 iii 轮恰好结束的前缀和,而我们再求个和就是期望轮数。 考虑每一轮的期望牌数。首先肯定会抽到一种鬼牌,所以必然+1。然后考虑经典...
贪心+二分+DP+矩阵快速幂:CF461E
贪心+二分+DP+矩阵快速幂:CF461E 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133316261 https://codeforces.com/contest/461/problem/E 第一步:捕捉题目信息 四种字符 →\to→ 矩阵 n≤1018→n\le 10^{18}\ton≤1018→ 矩阵快速幂 →\to→ dp 最小值最大 →\to→ 二分 第二步:分析性质 sss 未知?那如果已知怎么做,肯定是每次暴力选最长的。 ...
DP维护概率算期望+DP状态大小分析+DP状态维护前缀和:CF494C
dp维护概率算期望+dp状态大小分析+dp状态维护前缀和:CF494C 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133343917 https://www.luogu.com.cn/problem/CF494C 首先无交,先建树,然后上dp,三个优化 dp维护概率算期望 发现期望很难直接维护,直接维护某种值得概率,最后乘起来算期望 dp状态大小分析 发现这样子第二维会很大。但其最大值范围只在 [mx,mx+q][mx,mx+q][mx,mx+q] 内,...
线性代数+分治:446E
线性代数+分治:446E 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133336367 https://codeforces.com/problemset/problem/446/E 把官方题解翻译了一遍 考虑暴力,肯定想到dp,然后变成矩阵。设 用 代替 (这样子数之间的差值不会变化,但对于问题的处理能方便很多) 我们先令(也就是初始时的方案数) ,然后尝试构造转移矩阵 BBB BBB 的大小应该为 n×nn\times nn×n ,每个格子对...
分治常见Trick——启发式分裂+中间相遇法:CF1181E2
分治常见Trick——启发式分裂+中间相遇法:CF1181E2 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133323437 https://www.luogu.com.cn/problem/CF1181E2 首先E1,也就是分治应该很好想 考虑到E2,首先看到题目是二维平面,有很多种分割方法,所以我们可以考虑拆维。 拆完之后我们考虑枚举分界点。枚举分界点暴力遍历过大,于是自然而然的,我们可以考虑中间相遇法。 但如果优雅的维护对应的集合呢?朴素思路使用s...
启发式分裂
启发式分裂 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133321898 启发式分裂和启发式合并类似 对于一个数据结构,我们要对它进行分裂的时候,如果暴力拆成两个数据结构,很容易被卡 这个时候我们就可以考虑启发式分裂,把小的分出去,大的保留 在分治、set等题目中有广泛应用
中间相遇法(分治类问题非等大分治的平衡做法)
中间相遇法(分治类问题非等大分治的平衡做法) 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133321701 分治,如果分成两半大小不一样,很容易被卡到 O(n2)O(n^2)O(n2) 在某些题目中,利用中间相遇法,我们可以优化这个过程 其优化的前提是分治的大头在找分界点 复杂度不用证,很好理解吧 这层找地越久,下一层就越均匀
(非颜色、包含)线段类问题——离线+扫描线+DS:0926T4
(非颜色、包含)线段类问题——离线+扫描线+DS:0926T4 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133309861 这种类型的题其实很单一 首先有一堆线段,有询问,直接离线,然后上扫描线,然后套DS 问题来了,ds维护什么? 此题询问的看似是单点问题,本质是区间问题。 我们要尝试对题目进行转换,如果整个区间所有都满足,则单点必然满足 回到此题。首先扫描线满足了右端点。 那么ds只能维护左端点了。 既然是维护端点值,那么只能维护最值。 维护最值...
坐标系上的交互+分治与交互:CF788D
坐标系上的交互+分治与交互:CF788D 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/133281428 https://codeforces.com/contest/788/problem/D 坐标系上的交互有一种常见套路,就是抓住一些关键的线 x轴y轴 y=x(就是此题) 然后考虑接下来怎么做。 交互题常见有二分的套路,此题我们可以考虑推广到分治。 不断判断mid,然后就可以求出最近的范围,并递归下去即可 1234567891011121...












