摘要: "Longest Subarray" 题意:一个数列,每个元素大小都在1到C之间,求一个最长的子串,满足在这个子串中1到C之间的每个数字要么出现0次,要么出现至少K次。 题解:$i$从1到n枚举右端点,维护一个$tree[j]$表示在$i$为右端点时以$j$为左端点可行的个数(这里的可行是指对于1到 阅读全文
posted @ 2019-09-10 22:45 rain_star 阅读(252) 评论(0) 推荐(0) 编辑
摘要: "path" 题意:$n$个点$m$条边的有向图,需要砍掉几条边使从$1$到$n$的最短路变长,问花费的最小值。花费等于砍掉的所有边的权值和。 题解:两遍dij跑出所有属于$1$到$n$的最短路的边(边需要满足的条件为$dis1[u]+w+dis2[v]==dis1[n]$,$dis1$以1为源点, 阅读全文
posted @ 2019-09-10 13:49 rain_star 阅读(95) 评论(0) 推荐(0) 编辑
摘要: "subsequence" 题意:给长度为$n$, $m$的字符串$s$, $t$, 字符串由0~9的数字组成,问在十进制意义下$s$中比$t$串大的子序列个数。 $m\leq n \leq{3000}$. 题解:考虑两种不同情况:子序列长度等于$t$串以及子序列长度大于$t$串。用$len[i][ 阅读全文
posted @ 2019-08-01 20:53 rain_star 阅读(192) 评论(0) 推荐(0) 编辑
摘要: "Fansblog" 题意:给一个质数$p$,找小于$p$的最大质数$q$,并求$q!modp$. $p,q\epsilon(10^9, 10^{14})$ 题解:威尔逊定理:一个数$n$若是质数, 则有 $(n 1)! \equiv n 1 mod n$. 于是可以先令$ans = p 1$, 再 阅读全文
posted @ 2019-07-29 17:26 rain_star 阅读(316) 评论(0) 推荐(0) 编辑
摘要: "operation" 题意:给定长度为n的数列和m次操作, 每次在数列末尾添加一个数或者询问区间L到R的子集异或和最大值, 强制在线。 $n, m\leq 5 \times 10^{5}$ 解法:对所有$i\epsilon (1, n)$维护一个$(1,i)$的线性基$a[i][32]$, 类似于 阅读全文
posted @ 2019-07-28 17:34 rain_star 阅读(510) 评论(0) 推荐(1) 编辑
摘要: 先贴一个好博客: "好博客" "hdu1498" 以行为左点集, 列为右点集, 平面每个点mp[i,j]变成由行i和列j连接的边,题目变成了对每种颜色求这个二分图的最小点覆盖。 c++ include include using namespace std; int mp[105][105]; bo 阅读全文
posted @ 2019-07-26 22:29 rain_star 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 有四题比较典型的dp放在另一篇 DAY1 "Collision" 将小球速度正交分解为x,y方向,x或y相同时答案是固定的,都不同时根据周期建立二元一次方程 $$2XA+\frac{2X x1 x2}{2}=2YB+\frac{2Y y1 y2}{2}$$ 拓展gcd可解。 对于最小正整数解问题,由 阅读全文
posted @ 2019-07-11 22:13 rain_star 阅读(197) 评论(1) 推荐(1) 编辑