后缀自动机课件
下面有配套练习:
‘
LCS - Longest Common Substring - 洛谷
LCS2 - Longest Common Substring II - 洛谷
[TJOI2015]弦论 - 洛谷
NSUBSTR - Substrings - 洛谷
[AHOI2013]差异 - 洛谷
【模板】广义后缀自动机(广义 SAM) - 洛谷
[HAOI2016]找相同字符 - 洛谷
Forensic Examination - 洛谷
[ZJOI2015]诸神眷顾的幻想乡 - 洛谷
[CTSC2015]日程管理 题解
P4511 [CTSC2015]日程管理 - 洛谷
首先考虑对于第 $i$ 天,一开始在这之前肯定是可以放 $i$ 个任务的。
我们考虑当我们放了一个任务在天数 $t$ 的时候,$[t, T]$ 的可以放的任务数量肯定 $-1$。
我们考虑对于加入一个 $t$ 如果后面存在一个位置是不能放了,也就是可以放的任务数量是 $0$ 的情况,我们才需要考虑对于之前的位置进行取出判断。
显然这个东西是一个区间加的操作,我们考虑使用线段树进行维护。
考虑到我们每个点是可以撤销的,我们考虑对于加入和没有加入的集合分别进行维护即可。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151 ...
如何在文章内连 pdf
具体语法就是:
1<embed src="pdf-link" type="application/pdf" style="overflow: auto; width: 100%; height: 600px"/>'
其中 $\tt pdf-link$ 表示的是路径,最好是相对路径。
比如说我的文件都存在 $\tt image$ 里面,所以我的相对路径就是 /image/xxx.pdf。
然后后面的部分就是调整大小,$\tt px$ 就是表示像素。
上面的那个就是笔者博客比较适合的情况。
CF1603E A Perfect Problem 题解
Problem - 1603E - Codeforces
找找性质的好玩题。
首先考虑顺序对于题目的要求是没有关系的
对于一个排好序的序列,如果其符合条件那么其排列也肯定符合条件。
考虑对于这个排好序的序列进行操作,可以得到如果这个序列的每一个前缀都符合条件那么这个序列肯定符合条件。
既然是排好序了我们考虑对于每一个数是否有限制,限制肯定是存在的,如何找到呢?
明显发现对于 ${1, 1,1, 1, 1}$ 是不符合条件的,考虑 $\sum_{i = 1} ^ n a_i \le a_1 \times a_n$ 的限制。
$$\begin{aligned}\sum_{i = 1} ^ n (a_i - a_1) \le a_1 \times (a_n - n) \\\end{aligned}$$
当 $a_n = n$ 时,$\forall i \le n, a_i = i$。
$a_n \ge n$。
我们考虑 $a_n \ge n+ 1$ 的情况,考虑边界 $a_n = n+ 1$,同样是上面的式子可以得到 $\su ...
CF1603F October 18, 2017 题解
Problem - 1603F - Codeforces
看不懂题解,自己推一下。
发现直接进行操作是不方便的,我们会想到线性基,那么我们考虑通过基底进行计算。
当 $x = 0$ 的时候也就是意味着选择的位置都是线性无关的,我们考虑一个一个进行填充可以得到 $\prod_{i = 1} 2^k - 2^{i - 1}$。
显然 $n > k$ 的时候根据向量基底的性质,不可能产生线性无关的,直接为 $0$ 即可。
如果 $x \ne 0$ 我们考虑进行 $\tt Dp$,设 $f(i, r)$ 表示考虑到了 $i$ 个数,矩阵的秩是 $r$,转移方程考虑是否通过之前的位置进行表示。
我们考虑将限制 $x$ 加入进来,我们考虑任何一个数都是不能被 $x$ 所组成的,这样就是 $(n + 1) \times k$ 的矩阵了。
考虑 $a \oplus b = c \to a = b\oplus c$。
$$f(i, r) = f(i - 1, r) \times 2^{r - 1} + f(i - 1, r - 1) \ ...
THUPC I 分组作业 题解
I. 分组作业时间限制: 1.0 秒
空间限制: 512 MiB
相关文件: 题目目录
题目描述老师布置了分组作业。在此之前,老师将班上 $2n$ 个学生分成了 $n$ 组,每组两个人。其中 $1$ 号和 $2$ 号为一组,$3$ 号和 $4$ 号为一组,……,$2n-1$ 号和 $2n$ 号为一组。
老师让每个队伍自行安排分工。这样是否合作就成了一个大问题。大家决定用表决的方式来确定。首先每个人决定是否愿意和队友合作。不同的人因为自己的原因和分配的队友的原因,对合作的意愿不一样,对于第 $i$ 个学生,选择“愿意”会产生 $c_i$ 的不满,选择“不愿意”会产生 $d_i$ 的不满。
如果两名队友都选择“愿意”,那么根据实际情况他们可以合作或者不合作。但是如果有一名队友选择“不愿意”,那么他们只能不合作。
学生中还有 $m$ 个单向的喜欢关系,一个关系形如“$A$ 喜欢 $B$”。在这样一个关系中,如果 $A$ 没有和队友合作,且 $B$ 选择了“愿意”,$A$ 会有略微沮丧,产生 $a_i$ 的不满;如果 $A$ 表决了“不愿意”,但 $B$ 成功与队友合作,那么 $A$ 会羡慕嫉 ...
THUPC 题解
直接 $1$ 题都没出。
A 题解 | Legendgod’s Blog
D 题解 | Legendgod’s Blog
I 题解 | Legendgod’s Blog
THUPC D 造计算机 题解
时间限制: 1.0 秒
空间限制: 512 MiB
相关文件: 题目目录
题目描述小 R 和小 C 听说贵系有一门造计算机的课之后吓得连夜提交了退学申请。
开玩笑的啦!正处于大一的他们对这门课不但不害怕,甚至有些想笑。他们超强的动手能力甚至驱使他们想造一个玩意玩玩。
当然由于他们毕竟才大一,计算机专业课基本上都没上过,经过长时间的艰苦奋战,他们终于造出了一个奇怪的玩意:
这台计算机只有 $n$ 个内存单元,反而有足够多个寄存器。内存单元的编号从 $1$ 到 $n$ ,寄存器从 $n+1$ 开始往上编号。每个内存单元和寄存器可以存储一个整数。
目前他们已经设计好了一类指令:swap i, j,表示交换编号为 $i$ 和 $j$ 的单元里的数,其中 $i$ 和 $j$ 均为正整数且 $i \neq j$ 。他们打算写一段程序来测试这条指令。
最开始, $n$ 个内存单元中乱序存放着 $1\sim n$ 这些数,且每个数恰好出现一次。而每个寄存器里存放的是它的编号。
两人打算设计一段指令序列,使得计算机依次执行完这些指令后,所有内存和寄存器中的数都归位,也就是恰好等于它自己的编号。
虽然没学 ...