虽然觉得复习也没有什么用,还不吃好睡好,保持好心情。

SA:

坑就那几个。

\(s[0]=s[n+1]=-1\).

和\(rank\)交换的\(tp\)数组的\(tp[n+1]=0\)。

一般加上这两个多测也没有问题。

题:https://www.luogu.org/problem/P5576

https://www.luogu.org/record/26886770

数据有锅调了我好久,艹。

无非是启发式合并,不难,就是有点长。

SAM:

没写改儿子看了半天……

写完之后注意要写个递归验一验。但是似乎改儿子没写验不出来?

题:https://www.luogu.org/problem/P4022

https://www.luogu.org/record/26899209

广义SAM+单调队列

AC自动机:

注意\(fail[1]=0\),然后走到0时要回1,除非用另一种写法。

然后就是fail和含义,和一定要传fail。

题:
https://www.luogu.org/problem/P2603

https://www.luogu.org/record/26940875

因为几何太差WA了二十发。

考虑那四种操作也就是这两个图形相似。

也就是相邻边的夹角和边的长度的比值相同。

边的长度比值好搞,直接用平方比约一约就好了。

角的话考虑用叉积比点积,就是\(tan β\)。

但是注意角度可以负过来,即整个图形时针方向相反。

所以叉积比点积比值全部相反,也视作相同,所以正着反着做两遍。

然后当叉积为0时,会算重一遍。

搞完后再离散一下,跑个ac自动机,沿fail链传一下。

manacher:

日常手推,然后写错了……

题:

https://www.luogu.org/problem/P4287

https://www.luogu.org/record/26962019

考虑manacher新添加一个回文串是判断它的半部分是不是回文就好了。

也可以用回文树多记个标记表示跳fail最接近一半的回文后缀的位置,不断更新这个东西就好了。

exkmp:

每次写再看看之前的代码都会发现完全不一样。

题:

https://ac.nowcoder.com/acm/contest/1099/C

https://ac.nowcoder.com/acm/contest/view-submission?submissionId=41755315

把串反过来,自我匹配后统计一下就好了。

回文树:

题:

https://www.luogu.org/problem/P1659

https://www.luogu.org/record/27080559

这题用manacher做应该更简单的,实在是没有题写了。

CSP2019赛前小复习:的更多相关文章

  1. 2016年11月24日--面向对象、C#小复习

    面对对象就是:把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象.对同类对象抽象出其共性,形成类.类中的大多数数据,只能用本类的方法进行处理.类通过一个简单的外部接口与外界发生关系,对象 ...

  2. noip级别模板小复习

    不是很noip的知识点就不写了. dij什么的太easy就不写了. 缩点 注意\(Tarjan\)在缩边双和求强联通分量时候的区别. 一个要判断是否在栈内一个不要. 最后\(topsort\)来\(d ...

  3. C 小复习

    C语言 signed 与 unsigned: C语言中,当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型 signed ; unsigned ; cout << a ...

  4. js 小复习2

    1.数组 findIndex()  indexOf() // findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引.否则返回-1. function isBigEnough(ele ...

  5. js 小复习1

    1.数组 增删改查 , , , , ]; // arr.push(18); // 添加数组后面 更改长度 // arr.unshift(12); // 添加数组前面 // arr.pop(); // ...

  6. CSP-S 赛前模板复习

    快读模板 这个连算法都算不上... inline int read() { int x=0,f=1; char ch=getchar(); while(ch<'0' || ch>'9') ...

  7. es6简单小复习

    Ecmascript 6 ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了. Ecmascript 是 JavaScript 语言的 ...

  8. 终极蛇皮上帝视角之铁头娃之鲁迅之暑假闲的慌之bilibili看尚学堂网课的非洲酋长java小复习

    转自https://www.sxt.cn/Java_jQuery_in_action/eight-cache-problem.html 第一个点 自动装箱与拆箱的功能是所谓的"编译器蜜糖(C ...

  9. 关于ACM,关于CSU

    原文地址:http://tieba.baidu.com/p/2432943599 前言: 即将进入研二,ACM的事情也渐渐远去,记忆终将模糊,但那段奋斗永远让人热血沸腾.开个贴讲讲ACM与中南的故事, ...

随机推荐

  1. Linux如何查看进程是否存活

    ps  -ef  | grep nginx ps -ef | grep(过滤) 进程名字

  2. <三剑客> 老三:grep命令用法

    grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正 ...

  3. SQLserver查询作业、视图、函数、存储过程中的关键字

    一.查询视图.函数.存储过程中的关键字 SELECT a.name,a.[type],b.[definition] FROM sys.all_objects a,sys.sql_modules b W ...

  4. Pasha and Tea

    Pasha and Tea time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  5. window 安装VisualSvn Server

    VisualSvn Server 1 .VisualSvn Server  介绍和下载 VisualSvn Server是免费的,而VisualSvn是收费的.VisualSvn是Svn的客户端,和V ...

  6. [CSP-S模拟测试]:u(差分)

    题目背景 $\frac{1}{4}$遇到了一道水题,完全不会做,于是去请教小$D$.小$D$看了一眼就切掉了这题,嘲讽了$\frac{1}{4}$一番就离开了.于是,$\frac{1}{4}$只好来问 ...

  7. Protocol协议分发器

    1. 用途: 能够制定多个对象实现<Protocol>, 同一个代理方法,可以在多个对象中同时实现 2.原理: 利用消息转发机制,将方法分发到多个对象中 使用方式: self.tableV ...

  8. Python做简单的字符串匹配详解

    Python做简单的字符串匹配详解 由于需要在半结构化的文本数据中提取一些特定格式的字段.数据辅助挖掘分析工作,以往都是使用Matlab工具进行结构化数据处理的建模,matlab擅长矩阵处理.结构化数 ...

  9. 如何为元组中的每个元素命名,提高程序可读性---Python数据结构与算法相关问题与解决技巧

    实际案例: 学生信息系统中,数据为固定格式:(名字,年龄,性别,邮箱) ,通常使用元组来存储 使用优点: 使用元组最大的优点在于节省空间,存储相同的数据,使用元组比使用字典,空间小很多 使用缺点: 访 ...

  10. 【html】 两栏对比网页,同时滚动

    有的时候需要左右对比环境,而且希望能同时滚动,如下这么拼接就可以了 <html> <head><meta http-equiv="content-type&qu ...