09 2019 档案
摘要:线段树自用模板 #include <iostream> using namespace std; const int MAX_N=10010; int s[MAX_N<<2]; void up(int p) { s[p]=s[p<<1]+s[p<<1|1]; } void modify(int p,
阅读全文
摘要:目的:对给定的一个序列,在序列中寻找包含全部需求的、长度最小的一段子序列。一般用来解决具有单调性的区间问题。 时间复杂度:O(n) https://blog.csdn.net/lxt_lucia/article/details/81091597 自用模板: poj3061,给定一个序列,使得其和大于
阅读全文
摘要:目的:,在线更新 复杂度:每次更新√n块+√n个+√n个,so复杂度O(√n) belong[maxn],每个数在哪一块 block,每个块的大小 num,有多少块 l[maxn],这个数所在左边界是什么 r[maxn],这个数所在右边界是什么 https://www.cnblogs.com/qsc
阅读全文
摘要:目的:把字符串有效地转化为一个整数,极小的概率会出现两个字符串hash值相等。 学习链接:https://www.luogu.org/blog/pks-LOVING/zi-fu-chuan-xue-xi-bi-ji-ha-xi-hash-yu-zi-dian-shu-trie# hash[i]=(h
阅读全文
摘要:题面:https://nanti.jisuanke.com/t/41408 题意:A,2,3,4,5,6,7,8,9,10,J,Q,K,13张牌,无花色之分,val为1~13。 给n个人名+n个牌,输出人名的ranklist 比较规则: 皇家顺最大 顺子第二,都是顺看最大牌的val 四条第三,先看四
阅读全文
摘要:目的:已知一个串S,求S的循环的同构字符串S'中字典序最大/最小的一个,输出其位置,place∈[0,n-1] 设S=bcad,S'=bcad,cadb,adbc,dbca,最小表示的S'是adbc,位置是2,最大表示的S'是dbca,位置是3 时间复杂度:O(n) 自用模板: int get_mi
阅读全文
摘要:目的:线性查找一个串的最长回文子串 时间复杂度:O(n) len[i]表示以i为中心的回文串的半径,mx即为当前计算回文串最右边字符的最大值,p是中心点mid,mx-i和2*p-1关于p对称 https://blog.csdn.net/csdn_kou/article/details/8291793
阅读全文
摘要:目的:已知n个长度不一定相同的母串,以及一个长度为m的模式串T,求该模式串是否是一个母串的前缀。 时间复杂度:O(m) 特点:牺牲空间换取时间,常用于字符串的快速检索,快速排序与去重,文本的词频统计等。 模板 const int MAX_N = 10000; // Trie 树上的最大结点数 con
阅读全文
摘要:在线python:https://c.runoob.com/compile/9 版本类型:python3 文字部分加入了自己的理解(#^.^#) /是精确除 //取整除(对结果直接去掉小数部分) 相同的行缩进在同一层次,def是定义函数关键字,错误缩进会被告知语法错误syntax error,不用\
阅读全文
摘要:因为有道ac自动机+状压dp的题,故开此坑。 状压dp:状态压缩dp(元素数量通常不超过20),借助位运算将状态压缩。 空间复杂度:O(n*n) 上一行的状态为now,下一行的状态为prev,通过枚举上一行所有状态,来更新当前行、当前状态的最优解。 给定n*m矩阵,行列都不超过20,有些格子可选有些
阅读全文