把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end
现实中并没有什|

high_skyy

园龄:5个月粉丝:3关注:32 随笔 - 19  文章 - 6  评论 - 2  阅读 - 486

CF140E New Year Garland 题目分析
摘要: # CF140E New Year Garland 题目分析 挺不错的动态规划题目。 ## 思路 一看到题目便可以知道每一层和层与层之间是要分开来算的(这种类似的动态规划还有很多)。 我们先看看层与层之间的。 ### 层与层 题目要求:**相邻的两层的小球颜色集合不相同**。 那么区分相邻两层小球颜色集合不同可以通过**数量不同来区分**,然后再进行讨论即可。 根据上述,显然地,设 fi,j 表示已经完成前 i 层,到了第 i 层小球颜色集合的数量为 j 的总方案。 我们先抛开重不重复不谈,那么它的总方案肯定是从前面的那一层转移过来,即 fi1,k,其中 k[1,li1]。 那么是不是就是 fi,j=k=1li1fi1,k 呢?显然不是,这里的 j 是数量,并不是选了什么,因此还要有 Cmj 来确定选 j 种颜色球的方案(这是对于当前 i 的)。
3
0
0
1.浅谈一些数论函数及其应用
摘要: 1.浅谈一些数论函数
11
0
0
射手座之日 题目分析
摘要: 给一个 1n 的排列 a,并且给出点权 xi,并定义: LCA{b}=lca(lca((b1,b2),),bm) 其中 lca(x,y) 表示 xy 的最近公共祖先。 并且给出一颗树。 求: ans=i=1nj=i+1nxLCAi[i,j]{ai} 像这种比较经典的双 sigma 题目,最最最最暴力的解法是 O(n3)(先不考虑这里求 LCAlog)。 于是就很简单地拿到了此题的 40 分。 那么怎么优化到 O(nlogn) 呢? 我一般的思路是直接上线段树。 我们这颗线段树(显然维护的是 dfs 序区间)维护两个值,一个是 cnt 代表这段区间内有点作为 lca 的总方案,sum 就是加和实际的数量 ×xlca,注意到这里只有在有可能作为 lca 的点上相乘,`pushup` 的时候都是加和(这里的思路比较巧妙)。
1
0
0
[AGC006D] Median Pyramid Hard 题目分析
摘要: ## 评价 一道非常好的思维题目!!! ## 分析 注意到:从三个数选一个中位数。 似乎没有什么好的方法,但是每一层的迭代有一种相似方法。 我们假设一个答案。 将大于等于答案的标记为 1,其他的为 0。 三——一个非常重要的数,我们要考虑以下: ``` 全是0:000 -> 0 一个1:001 -> 0 两个1:101 -> 1 三个1:111 -> 1 ``` 我们发现得到的答案取决于数量(0 多还是 1 多)。 那我们怎么确定他能一直走到尾呢? 注意到: ``` ??? -----> 00? x00zy x00zy ``` 也就是说,两个连续的在一起,能够使得上面也一样(但是要看边界)。 注意到要是中间有连续的(即最靠近中间的一段 0 或者 1)说明顶尖就是大于等于数字。 我们发现这样具有单调性,于是乎可以考虑二分答案解决。 然后我们就很好的解决了该问题。 总时间复杂度 O(nlogn).
2
0
0
P6815 [PA2009] Cakes 题目分析
摘要: [题目链接](https://www.luogu.com.cn/problem/P6815) ## 分析题目性质 本质上是求三个点组成的环的点权最大值的和。 ## 思路 考虑枚举第一个点 i,然后枚举与其相邻的第二个点 j,用 set 存储 i,j 相连的点,最后判断得出答案。 我们发现满足答案的满足 $i
8
0
0
就 NOIP2024 中出现的问题进行深入探讨
摘要: # 就 NOIP2024 中出现的问题进行深入探讨 估分:100+0+0+0=100. 好吧,为了一道蓝题我花了 2 h 45min. 其实原因很简单——因为代码实现细节很多导致 20 多分钟想出来的东西隔了 1h 才去实现,并且代码能力不够,调了 1h 才过大样例。 T2 想了差不多 30 分钟得出了一个很显然的 O(n)dp,但是到了最后没有调出来。考后才发现一道绿题卡我这么久!——原因是没有想到**正难则反**。 所以原本实力:100+100+0+0=200. 总结原因: - 代码能力不够,在这里浪费的时间超过 1h. - 不坚信自己的能力,比如说 T1 想到正解但是因为细节多没有打。 - 数学方面没有形成思维,比如正难则反。 - 自己不够熟练。
87
0
0
P2575 高手过招 题目分析
摘要: # P2575 高手过招 题目分析 [题目链接](https://www.luogu.com.cn/problem/P2575) ## 分析题目性质 我们发现每个行之间是**互不干预的**,因此可以分开处理。 又注意到:m20. 我们不难由此想到用**状态压缩**来表示 SG 函数。 于是问题就迎刃而解了。 ## 思路 根据上述我们预处理出 SG 函数,然后对于第 i 个数据的第 j 行对其状态的 SG 值进行异或,判断是否为 0 就能确定答案。
8
0
0
UVA1482 Playing With Stones 题目分析
摘要: UVA1482 Playing With Stones 题目分析 [题目链接](https://www.luogu.com.cn/problem/UVA1482) ## 分析题目性质 这是一道博弈论题目,没有比较明显的结论后我们一般采用打表 SG 函数,然后找规律。 ## 思路 经过上述,我们不难得到打表 SG 的代码(由于原本要到 1018,但数组存不下,这里只能考虑取样调查 把 SG(1)=0 加进来就是在前面多了一个 0. 我们似乎发现了一些规律: - 对于 x 为偶数,那么它的 SG(x)=x2. 把偶数项删掉,得到: ``` 0 1 0 2 1 3 0 ``` 我们发现这和原来的 SGlen2 个是一样的(假设 len 为原本长度)。
8
0
0
整数划分 题目分析以及衍生出来的一系列做法
摘要: # 整数划分 题目分析以及衍生出来的一系列做法 推荐看[背包计数问题的多项式优化](https://www.cnblogs.com/maple276/p/18342090)。 ## 题目概述 将 n 分为若干个**不同**整数的和,问有多少种方案。 ## 分析题目性质 想一想,注意到是不同整数的和,也就是说我们分成的 k 部满足: k(k+1)2n 约等一下,k2n+1,即 kmax=2n+1. 因此可以考虑 O(nk) 算法。
31
2
0
SP703 SERVICE - Mobile Service 题目分析
摘要: [四倍经验](https://www.luogu.com.cn/paste/6zox5x4a) 目前这道题是最基础的,四倍经验里面的 T2 与此一样,T3 有点卡空间,但是还好,方案用 `short` 或者 `char` 即可优化,T4 一样,有些卡常,问题不大。 ## 分析题目性质 没有什么十分有用的性质。 ## 思路 注意到:分配干活的只有 3 个人。 看到这么小的数很容易想到三维或者四维 dp 或者是 状态压缩 dp,很显然是前者。 设 fi,a1,a2,a3 表示第 i 个请求后,三个人的位置分别为 a1,a2,a3 的最小成本。 转移是简单的,不过多赘述。
8
0
0
浏览器标题切换
浏览器标题切换end
深色
回顶
收起
点击右上角即可分享
微信分享提示