- 博客(10)
- 收藏
- 关注
原创 CF922D Robot Vacuum Cleaner 题解
的前缀和),所以如果交换能使答案变大,进行交换显然更优,故只要对所有串排序,排序比较关键字时考虑两个串交换前后。数量,使较大的在前面。对于排完序的序列,再进行任何交换都会使答案变劣,故贪心策略正确。组成的字符串,可以任意改变这些串之间的相对位置,组合成一个长串,要使长串中子序列。对于相邻两个串考虑,发现交换只会影响仅分别由这两个串中的一个字符组成的。显然,前者不会受到每个串的排列顺序影响,所以只需考虑后者。子序列(因为不影响两个串前面和后面的。首先考虑一个序列中的子序列。的数量如何计算,对于每一个。
2023-11-06 20:39:20
64
1
原创 P1043 [NOIP2003 普及组] 数字游戏 题解
但似乎取模后不好转移最值状态,但实际上直接转移时直接每次无脑取模更新区间即可。段取模乘积得到的最值,最外层从小到大枚举p即可,这样每次更新就可以直接使用分。必须提前初始化只有一段不分开的情况,直接前缀和取模,因为后面的情况都是从。不好处理,可以直接加一维状态,表示分段数,于是。根本没有更新,值也没有意义,会变得非常诡异。开始,不然会WA,因为k太小对应的。看题面很容易想到环形区间。
2023-10-20 19:29:50
58
1
原创 同余的性质及逆元
若gcdan1gcdan1且满足ax≡1modpax≡1modp,则称xxx为aaa模bbb的乘法逆元,记作xa−1x=a^{-1}xa−1。所以 a 存在模 n 的逆元⇔⇔gcdan1gcdan1。
2023-10-20 19:27:02
88
1
原创 [CSP-S 2021] 括号序列 详细题解
写了这篇题解来详细谈谈这题的思维过程和做题时 dp 状态的逐步建立过程,同时稍稍改良了一下大佬的做法,少用了一个状态,希望这篇题解能帮到大家 qwq。定义dpijpdp_{i,j,p}dpijp为在SSS的区间ij[i,j]ij中确定?
2023-09-13 22:37:59
374
2
原创 洛谷P9554 「CROI · R1」浣熊的溪石 题解
注意本题需要取模,而式子出现了除法,需要先通过费马小定理(模数是质数故可以使用)计算。而直接使用乘法原理,把每一位的情况数相乘,得出。所以直接根据上面的分析表示出答案为。使用快速幂计算,总复杂度为。
2023-09-10 20:29:52
58
1
原创 tarjan算法求边双连通分量 初学详解
注意!双连通仅针对无向图而言。性质:一个点不可能同时属于2个边双连通图,因为如果两个双连通分量相交与一点,那么删去任意一条边,两个子图之间仍然连通 , 故“属于同一个双连通图”的关系是具有传递性的。 边双连通分量:一张连通图的极大边双连通子图
2023-09-10 20:25:06
397
原创 中国剩余定理详解&学习笔记
给定 $n$ 组非负整数 $a_i, b_i$ ,求解关于 $x$ 的方程组的最小非负整数解。$$\begin{cases} x \equiv a_1\ ({\rm mod}\ m_1) \\ x\equiv a_2\ ({\rm mod}\ m_2) \\ ... \\ x \equiv a_n\ ({\rm mod}\ m_n)\end{cases}$$其中,$m_1,m_2 , \dots ,m_n$ 两两互质。
2023-09-10 20:19:09
222
原创 l洛谷P9474 [yLOI2022] 长安幻世绘 详细题解
我们首先思考这样一个问题,如果已经知道最终答案对应的最大值和最小值,又不知道题目给的 $m$,该如何去求这样选出的子列的长度呢?显然,我们要让原序列中大小在最大值和最小值之间的所有数都尽可能多地选进子列
2023-09-10 20:12:02
67
原创 洛谷好题 P1950 长方形 详细思路题解 有图 附代码
把所有剪出来的长方形情况总数划分为划分为互不重复、容易计数的小范围情况,再把所有小范围的情况总和加起来得出答案,其实就是dp的思想。**如何设计枚举方式呢?**我们需要找一个标准去枚举所有情况,而在此题中最容易想到的标准就是每个没有被画过的格子——因为所有符合要求的长方形一定是全由没有被画过的格子组成的,故我们可以通过枚举每一个格子能“扩展”形成的长方形(即这个格子被长方形包含)个数来计算总数。
2023-06-22 01:51:33
329
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人