Bovine Genomics

暴力

str

hash+dp

设\(dp[i][j]\)为前\(i\)组匹配到第\(j\)位的方案数,则转移方程

\[dp[i][j+l]+=dp[i-1][j]
\]

(\(j,l\)为满足题意的情况

通配符匹配

读题杀。dp

注意星号是可以匹配0个的。

按通配符分段,01表示是否能取到。

蚯蚓排队

留坑。

Seek the Name,Seek the Fame

kmp(利用next数组)

动物园

现场教学可还行

直接求就好

Censoring

模拟一个栈,next准备好,边压边弹

OKR-Periods of Words

利用next数组

最大周期=全部-最小公共前后缀

一直跳next就能求出

有一个while循环,会T,所以跳完以后把起点next直接设为结果

GT考试

\[f[i][j]=\sum\limits_{k=0}^{m-1}f[i-1][k]*g[k][j]
\]

式子形式比较熟悉,可以矩阵快速幂优化

字符串的匹配

数的相对排名可以用树状数组处理,需要预先记录模式串里每个数的排名(记录\(<\)以及\(\leq\)的数量)

用kmp,匹配时把当时有用的数放到BIT里,跳next时记得删掉

如匹配成功,记录答案并跳next

Phone List

trie板子

The XOR Largest Pair

利用trie,把数转成二进制建01trie,然后尽量走01不同的

The XOR-longest Path

dfs出每个点到1的异或和,易得\(f(u,v)=f(1,u)\ xor\ f(1,v)\)

求最短路当然不能这样……但是因为有\(a\ xor\ a=0\)这个性质嘛

Nikitosh和异或

\(A[l_1]\ xor\ A[l_2]\ xor\dots xor\ A[l_n]=A_{pre}[l_n]\ xor\ A_{pre}[l_1-1]\)

后缀同理。

所以做一个前缀,做一个后缀,求最大的\(f(left)+f(right)\)

「刷题笔记」哈希,kmp,trie的更多相关文章

  1. 「刷题笔记」AC自动机

    自动AC机 Keywords Research 板子题,同luoguP3808,不过是多测. 然后多测不清空,\(MLE\)两行泪. 板子放一下 #include<bits/stdc++.h&g ...

  2. 「刷题笔记」DP优化-状压-EX

    棋盘 需要注意的几点: 题面编号都是从0开始的,所以第1行实际指的是中间那行 对\(2^{32}\)取模,其实就是\(unsigned\ int\),直接自然溢出啥事没有 棋子攻击范围不会旋转 首先, ...

  3. 「刷题笔记」LCA问题相关

    板子 ll lg[40]; ll dep[N],fa[N][40]; ll dis[N]; void dfs(ll u,ll f) { dep[u]=dep[f]+1; fa[u][0]=f; for ...

  4. 「刷题笔记」Tarjan

    贴一个讲得非常详细的\(tarjan\)入门教程 信息传递 讲个笑话:我之前用并查集求最小环过的这题,然后看见题目上有个\(tarjan\)标签 留下了深刻的印象:\(tarjan\)就是并查集求最小 ...

  5. Python 刷题笔记

    Python 刷题笔记 本文记录了我在使用python刷题的时候遇到的知识点. 目录 Python 刷题笔记 选择.填空题 基本输入输出 sys.stdin 与input 运行脚本时传入参数 Pyth ...

  6. 《Data Structures and Algorithm Analysis in C》学习与刷题笔记

    <Data Structures and Algorithm Analysis in C>学习与刷题笔记 为什么要学习DSAAC? 某个月黑风高的夜晚,下班的我走在黯淡无光.冷清无人的冲之 ...

  7. ☕【JVM技术指南】「JVM总结笔记」Java虚拟机垃圾回收认知和调优的"思南(司南)"【下部】

    承接上文 (完结撒花1-52系列)[JVM技术指南]「JVM总结笔记」Java虚拟机垃圾回收认知和调优的"思南(司南)"[上部] 并行收集器 并行收集器(也称为吞吐量收集器)是类似 ...

  8. PTA刷题笔记

    PTA刷题记录 仓库地址: https://github.com/Haorical/Code/tree/master/PTA/GPLT 两周之内刷完GPLT L2和L3的题,持续更新,包括AK代码,坑 ...

  9. 看完互联网大佬的「LeetCode 刷题手册」, 手撕了 400 道 Leetcode 算法题

    大家好,我是 程序员小熊 ,来自 大厂 的程序猿.相信绝大部分程序猿都有一个进大厂的梦想,但相较于以前,目前大厂的面试,只要是研发相关岗位,算法题基本少不了,所以现在很多人都会去刷 Leetcode ...

随机推荐

  1. kubernetes 基础知识

    1. kubernetes 包含几个组件 Kubernetes是什么:针对容器编排的一种分布式架构,是自动化容器操作的开源平台. 服务发现.内建负载均衡.强大的故障发现和自我修复机制.服务滚动升级和在 ...

  2. Centos7安装Gitlab11

    一.基础介绍 1.简介 一个基于GIT的源码托管解决方案 基于rubyonrails开发 集成了nginx postgreSQL redis sidekiq等组件 2.安装要求 2g内存以上,有点占内 ...

  3. Spring中的BeanFactory与FactoryBean看这一篇就够了

    前言 理解FactoryBean是非常非常有必要的,因为在Spring中FactoryBean最为典型的一个应用就是用来创建AOP的代理对象,不仅如此,而且对理解Mybatis核心源码也非常有帮助!如 ...

  4. .netcore实现jwt身份验证

    前言 http协议本身是一种无状态的协议.所以客户端的每次请求,服务端是不清楚其身份的,需要客户端每次都要将身份信息传入,服务进行验证,才能达到安全验证的目的. 传统的Web用户验证:1.客户端传入用 ...

  5. tp3.2关闭debug save方法执行失败

    解决该问题需要 清除缓存文件 将retime下的文件删除

  6. vi&vim 基本使用方法

    vi/&vim 基本使用方法 本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅 ...

  7. 安装tomcat for ubuntu linux差点没晕死我!

    我滴个神!装ubuntu的tomcat差点没有晕死我!怎么回事呢? 应该说是装好了,执行了bin/startup.sh了,出现以下画面: Using CATALINA_BASE: /home/niew ...

  8. TypeScript注意

    中文文档中,元组目前已经不能越界访问

  9. drop_cache-sar

    查线上问题: 1.cpu  idle 为0 ,I/O高, pidstat 发现进程io 不高,那就是cache mem引起系统io高了 没有vmstat,只能使用sar工具了,使用sar -r  查看 ...

  10. linux之DNS服务

    1.DNS (Domain Name Service 域名解析) DNS是因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网而不需要记忆能够直接被机器识别的IP. BI ...