摘要: 暴力枚举跑三遍堆优化Dijkstra即可 手写堆记得清零 cpp include"cstdio" include"cstring" include"iostream" include"algorithm" using namespace std; const int MAXN=155; const 阅读全文
posted @ 2018-12-02 21:40 A·H 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 数位DP基本都是这个套路吧 阅读全文
posted @ 2018-12-02 19:39 A·H 阅读(128) 评论(0) 推荐(0) 编辑
摘要: $F[i]=\min\{ F[j]+(lis[i] lis[j]+i j 1 L)^2 \}$ $f(i)=lis[i]+i,g(i)=f(i)+L+1$ $F[i]=F[j]+(f(i) g(j))^2$ $F[i]=F[j]+f(i)^2 2f(i)g(j)+g(j)^2$ $F[j]=2f(i 阅读全文
posted @ 2018-12-02 19:08 A·H 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 题目大意:求十进制下x!的位数 这题其实就是要求$\lg$函数值的前缀和啊 对于一个数x,若$\lg x=y$,则其位数为$\lfloor y+1 \rfloor$ 然后对于对数,我们有$\lg \prod_{i=1}^x i= \sum_{i=1}^x \lg i$ 预处理前缀和之后在线$\The 阅读全文
posted @ 2018-12-02 13:47 A·H 阅读(98) 评论(0) 推荐(0) 编辑
摘要: $\frac{\sum_{i=1}^N a_ix_i}{\sum_{i=1}^Nb_ix_i}=ans$ $\sum_{i=1}^N a_ix_i ans\sum_{i=1}^N b_ix_i=0$ 二分答案ans即可 阅读全文
posted @ 2018-11-30 15:02 A·H 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 长函数大括号换行 短函数左右括号在一行 长循环大括号不换行 短循环不用加括号时能用','就不用';',否则使用';'且左右括号在一行 Tab缩进4格 能用const不用define 阅读全文
posted @ 2018-11-29 13:42 A·H 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 分块+线性DP 维护从某个点出发跳出这个块会跳到哪,需要几步即可 阅读全文
posted @ 2018-11-28 20:26 A·H 阅读(107) 评论(0) 推荐(0) 编辑
摘要: T1 $\sum_{i=1}^N \sum_{j=1}^M [(i,j)=1]$ $f(d)=\sum_{i=1}^N \sum_{j=1}^M [(i,j)=d]$ $g(d)=\sum_{i=1}^N \sum_{i=1}^M [d|(i,j)]=\lfloor \frac{N}{d} \rfl 阅读全文
posted @ 2018-11-27 21:15 A·H 阅读(595) 评论(0) 推荐(1) 编辑
摘要: 线性筛 线段树 矩阵快速幂 Gauss cpp include"cstdio" include"cstring" include"iostream" include"algorithm" using namespace std; const int MAXN=105; const double ep 阅读全文
posted @ 2018-11-27 17:26 A·H 阅读(201) 评论(0) 推荐(2) 编辑
摘要: 题目大意:给定一个字符串长度与一个字符串集,求存在该集合中元素作为子串的该长度字串数量 思路:AC自动机+DP+容斥(全集 不合法的) cpp include"cstdio" include"cstring" include"iostream" include"algorithm" using na 阅读全文
posted @ 2018-11-26 15:57 A·H 阅读(90) 评论(0) 推荐(0) 编辑