随笔分类 -  乘法原理

摘要:题目大意 给你一个串和m个下标 问你一个长度为n的串每一个下标开始的后缀的前缀都包含给定的串的方案数 分析 对于给定的串求出z数组 对于两个串不重叠的情况就是中间都不包含的数随便填即可 对于重叠的情况判断相交部分的左端点的z[i]是否大于等于重叠长度即可 代码 阅读全文
posted @ 2019-09-01 08:58 水题收割者 阅读(271) 评论(0) 推荐(0)
摘要:题目大意 给你n个二元组 问你有几种排列是的按两个关键字中的任意一个都不是不降排列的 分析 不妨容斥 我们先加上总的方案数$n!$ 之后我们按第一个关键字排序 因为值相同的情况下不影响答案 所以让总方案数减去$\prod sum_{ai}!$即可 对于第二关键字的情况同上 我们再使序列同时按照第一关 阅读全文
posted @ 2019-08-26 21:41 水题收割者 阅读(216) 评论(0) 推荐(1)
摘要:先吐槽一下这个比赛的奇怪名字 这个破名字让我实在不知道博客标题该叫啥/px 题目大意 给你一个长度为2n的序列 包括W和B 每次可以选一个区间将里面的颜色反转 但是每个点只能被作为端点选一次 问将序列全部变为W的操作方案数 分析 可以将区间左右端点看作左括号与右括号 我们发现对于W一定被偶数个区间覆 阅读全文
posted @ 2019-08-26 17:13 水题收割者 阅读(203) 评论(0) 推荐(0)
摘要:分析 对于每一个点只要维护它前面/后面的一小一大组合的数量 对于这个可以维护两个树状数组 然后从前往后/从后往前分别扫一遍相乘即可 代码 阅读全文
posted @ 2019-08-24 19:25 水题收割者 阅读(164) 评论(0) 推荐(0)
摘要:分析 我们发现如果行的异或和等于列的异或和那么对于n-1行m-1列的所有数的选择都是任意的 因为一定可以在它的行末/列末选一个合适的数是的整体满足 但是我们发现对于右下角那一个数是否满足存疑 我们设矩阵为 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 阅读全文
posted @ 2019-08-24 19:22 水题收割者 阅读(466) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-08-16 21:17 水题收割者 阅读(2) 评论(0) 推荐(0)
摘要:传送门 分析 https://www.luogu.org/blog/user43145/solution-p1627 代码 阅读全文
posted @ 2019-02-07 09:39 水题收割者 阅读(185) 评论(0) 推荐(0)
摘要:传送门 分析 首先我们不难想到我们一定可以将每一个点分开算,然后看这个点被几个矩形包含 于是对于位置为$(i,j)$的点它被包含的次数为$i * (n-i+1) * j * (m-j+1)$ 这个式子的意义为,对于在第$i$行的点,它上面可以选$0$~$(i-1)$行,它下面可以选$0$~$(n-i 阅读全文
posted @ 2018-11-01 07:54 水题收割者 阅读(110) 评论(0) 推荐(0)
摘要:传送门 分析 我们发现这个四元组可以分解成一个逆序对拼上一个顺序对,这个线段树搞搞然后乘一下就可以求出来了,但是我们发现可能有(a,b)为逆序对且(b,c)为顺序对的情况,所以要进行容斥,我们只需要枚举是哪一个点重合然后减掉即可。 代码 阅读全文
posted @ 2018-10-16 14:48 水题收割者 阅读(170) 评论(0) 推荐(0)
摘要:传送门 分析 此题关键在于想出dp[i][j][k]代表考虑到第i行,还能放1的的共有j列,还能放2的共有k行。之后就枚举每一行是没有还是1个1还是2个1还是1个2,然后转移即可。 代码 阅读全文
posted @ 2018-09-23 18:29 水题收割者 阅读(167) 评论(0) 推荐(0)
摘要:传送门 分析 我们对于每一个可以匹配的字符都将其从栈中弹出,然后他的哈希值就是现在栈中的字符哈希一下。然后我们便可以求出对于哪些位置它们的哈希值是一样的,即它们的状态是一致的。而这些点可以求出它们的贡献(这个式子见代码)。而这个式子的意义是对于左括号自然表示哪几个括号组成一个合法序列,而对于右括号则 阅读全文
posted @ 2018-09-15 09:54 水题收割者 阅读(123) 评论(0) 推荐(0)