摘要:
题目大意 有 $\text{N1}$ 本书 $\text{N2}$本练习册 $\text{N3}$本答案,一本书只能和一本练习册和一本答案配对。给你一些书和练习册,书和答案的可能的配对关系。问你最多可以配成多少套完整的书册。 解题思路 我已开始直接建立超级源点汇点,然后源点$\rightarrow 阅读全文
摘要:
解题思路 设置两个二维数组 $f$ 和 $g$,含义如下。 $f[l][r]$ 表示在期望得到的队形中 $l\rightarrow r$ 这段区间初始队形排列的方案数,并且最后一个加入进去的是第 $l$ 个人。 $g[l][r]$ 表示在期望得到的队形中 $l\rightarrow r$ 这段区间初 阅读全文
摘要:
引言 众所周知,字符串无论是在 OI 中还是别的计算机领域都占有比较大的比重,今天说的就是一个关于匹配字符串的算法——「 KMP 算法 」。 0x00 KMP 算法用于解决这样的一类问题:给定一个文本串 T 和模式串 S,要求你求出 S 在 T 中出现的次数和位置(我们定义位置为 S 中第一个字符在 阅读全文
摘要:
标题真直接 题目大意 给你 $n$ 个字符串。存到一个字典中。又给你 $m$ 个询问,每个询问给一个字符串,在字典中查出有多少个字符串是以这个字符串为前缀。 解题思路 模板题啊 在每个点设置一个变量 $sig$ 表示有几个单词是以经过路径上的字符组成的串作为前缀的个数。 $Trie$ 树。在 $in 阅读全文
摘要:
题目大意 给出一个长度为 $n$ 的字符串 $s$ 要求你求出 $s$ 的每一个前缀在 $s$ 中出现的次数之和。$n\le 200000$。 解题思路 暴力的对每一个前缀进行一次匹配,求出出现次数后求和。 那肯定是不行的,复杂的是 $O(n\times (m+n))$ 的,不用想也知道要 TLE 阅读全文
摘要:
吐槽题目难度,这个题建模好像比前两个都要难,但是难度评级却比第二个要低。 解题思路 依旧是考虑如何建模和建立源点汇点。每个点的货物数量到最后都一样的话肯定是等于他们的平均值。用 $num$ 数组存储原来的货物数量,$tmp$ 是平均值。 如果 $num[i]-tmp$ 大于 $0$ 就表示这个点会免 阅读全文
摘要:
2018/9/3 14:55 Update 今天做了一道题 Luogu P1231 发现自己的 Dinic 写的很慢,居然超时 7 个点,于是决定加一些优化。 然后就在题解中看到了一种这样的写法 所以来更新一下这篇文章。这样写确实跑的很快。 1231 这道题直接过了。 然后又去试了试网络最大流的模板 阅读全文
摘要:
解题思路 还是建立超级源点和超级汇点,又因为题目给出规定一个人只能修一个工件,所以建图的时候还要讲容量都设为$1$。 人的编号是$1\rightarrow n$,工件的编号是$n+1\rightarrow 2\times n$。人和超级源点连边,工件和超级汇点连边,跑一个最小费用最大流和最大费用最大 阅读全文
摘要:
解题思路 考虑如何建模。 既然是网络流,那么肯定要有源点和汇点。而这个题目并没有什么明显的源点和汇点。 想一想,如果一个飞机能够起飞的话,那么必定有一对可以配对的正副驾驶员。也就是说一条曾广路能够上必定有且只有一对配对的管理员。 这里引入一个超级源点和超级汇点。超级源点就和正驾驶相连,流量为$1$。 阅读全文
摘要:
解题思路 我们先来观察一下题目中给出的公式 $$a'_i=(\sum_{j=1}^na_j)-a_i$$ 通过这个公式推一下经过再编号后的序列的总和,因为我们推出这个和之后可以进行下一次计算。 $$\sum_{i=1}^na'_i=\sum_{i=1}^n((\sum_{j=1}^na_j)-a_i 阅读全文