CSP2019赛前小复习:
虽然觉得复习也没有什么用,还不吃好睡好,保持好心情。
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赛前小复习:的更多相关文章
- 2016年11月24日--面向对象、C#小复习
面对对象就是:把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象.对同类对象抽象出其共性,形成类.类中的大多数数据,只能用本类的方法进行处理.类通过一个简单的外部接口与外界发生关系,对象 ...
- noip级别模板小复习
不是很noip的知识点就不写了. dij什么的太easy就不写了. 缩点 注意\(Tarjan\)在缩边双和求强联通分量时候的区别. 一个要判断是否在栈内一个不要. 最后\(topsort\)来\(d ...
- C 小复习
C语言 signed 与 unsigned: C语言中,当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型 signed ; unsigned ; cout << a ...
- js 小复习2
1.数组 findIndex() indexOf() // findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引.否则返回-1. function isBigEnough(ele ...
- js 小复习1
1.数组 增删改查 , , , , ]; // arr.push(18); // 添加数组后面 更改长度 // arr.unshift(12); // 添加数组前面 // arr.pop(); // ...
- CSP-S 赛前模板复习
快读模板 这个连算法都算不上... inline int read() { int x=0,f=1; char ch=getchar(); while(ch<'0' || ch>'9') ...
- es6简单小复习
Ecmascript 6 ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了. Ecmascript 是 JavaScript 语言的 ...
- 终极蛇皮上帝视角之铁头娃之鲁迅之暑假闲的慌之bilibili看尚学堂网课的非洲酋长java小复习
转自https://www.sxt.cn/Java_jQuery_in_action/eight-cache-problem.html 第一个点 自动装箱与拆箱的功能是所谓的"编译器蜜糖(C ...
- 关于ACM,关于CSU
原文地址:http://tieba.baidu.com/p/2432943599 前言: 即将进入研二,ACM的事情也渐渐远去,记忆终将模糊,但那段奋斗永远让人热血沸腾.开个贴讲讲ACM与中南的故事, ...
随机推荐
- centos6安装完成之后必要的配置
centos6安装完成之后必要的配置 一配置yum源 [root@centos61 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirro ...
- Python内建模块--collections
python内建模块--collections collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple 我们知道tuple可以表示不变集合,例如,一个点 ...
- vector内存增长方式
首先必须要了解vector是一种特殊的数组,因此其内存必然是连续的 其次它的连续是建立在不断地对内存的预分配上的,即不断地销毁当前,重新建立内存,效率有点低.所以存在几个函数capacity, siz ...
- 空间日志编辑器:word文档图文快速粘贴到web
百度ueditor可以实现word文档图文快速粘贴到web 1.4.2之后官方并没有做功能的改动,1.4.2在word复制这块没有bug,其他版本会出现手动无法转存的情况 本文使用的后台是Java.前 ...
- Python基础教程(016)--Python2和Python3的介绍
前言 Python2和Python3的区别 内容 Python3是现在和未来的主要版本 Python3没有考虑向下兼容. 官方提供了一个Python过度版本Python2.6 Python2.6及支持 ...
- php理解非对称SSL加密解密、验证及签名
加密方式分为对称加密和非对称加密,对称加密只使用一个秘钥,加密和解密都使用该秘钥:非对称加密则使用一对秘钥,使用公钥加密,私钥解密. 需要通过原生的openssl_public_encrypt加密,o ...
- Gym10198-Mediocre String Problem-2018南京ICPC现场赛
目录 Catalog Solution: (有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 Catalog @ Problem:传送门 Portal 原题目描述在最下面. Solu ...
- post方式请求数据
post方式请求数据 分析: 1.将请求方式改成post conn.setRequestMethod("POST"); 2.设置连接可以输出 conn.setDoOutput(tr ...
- vux使用方法
# 使用vux及vuex-i18n需要做的工作 ### 1.首先需要安装vux ### 2.需要安装vux-loader ### 3.需要安装vuex ### 4.需要安装vuex-i18n ### ...
- drf基础
1.什么是编程? 数据结构和算法的结合 2.什么是REST? 同一个功能会产生五花八门的url(把查看单条记录和查看多条记录都看成是一个功能),而且响应回去的数据也没有同一的格式规范,这就造成了前后端 ...