摘要: https://codeforces.com/gym/101889/attachments 题意 环形DP 显然$\gcd(i,n)$相等的$i$,他们的情况完全一致(都可以由多次跳$\gcd(i,n)$步转移而来) 那么我们枚举$n$的因数,注意是因数而不是质因数 例如对于$2$和$4$ \[ 2 阅读全文
posted @ 2020-07-24 20:35 GK0328 阅读(69) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/gym/101196/attachments 环形/区间DP 先将区间复制一遍 令$f[i][j]\(表示区间\)[i,j]\(删去\)[i+1,j-1]$的数的最小代价 之所以这样定义是因为这样比较好转移 \[ f[i][j]=\min_{i<k<j} 阅读全文
posted @ 2020-07-24 19:07 GK0328 阅读(119) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/gym/101473/attachments 题意 环形DP $dp[i]$表示$1~i$被处理完最少需要覆盖多长的补丁 用二分找出上一个转移位置 然后枚举序列情况即可 复杂度$O(n^2log n)$ #include<cstdio> #include 阅读全文
posted @ 2020-07-24 18:19 GK0328 阅读(92) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2228 题意 环形DP 本来考虑把区间复制一遍,然后截取一段区间的方法,结果假掉了 实际上特判一下就行了 要么第一时刻不睡觉,直接$DP$ 要么第一时刻睡觉,那么最后一时刻必须睡觉,再$DP$一次 $Over$了。 \(C++ Code:\) # 阅读全文
posted @ 2020-07-24 16:07 GK0328 阅读(75) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2152 题意 树型DP 数据范围较小,首先,暴力求出两点间距离 令$f[i]$表示以$i$为根的子树全部被消防站覆盖的最小花费,$g[i][j]$表示以$i$为根的子树全部被消防站覆盖,且$u$使用$i$的消防站的最小花费 \[ f[u]=\mi 阅读全文
posted @ 2020-07-24 15:38 GK0328 阅读(89) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P3346 广义后缀自动机 我们需要把所有两两叶子节点之间的路径丢进广义后缀自动机中,然后计算不同子串个数 观察数据,叶子节点数为$\le 20$,好像有点小 那么我们暴力枚举每个叶子节点为根的情况,然后处理根与其他叶子节点的路径 认 阅读全文
posted @ 2020-07-23 17:33 GK0328 阅读(90) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P4248 后缀自动机 观察原式,类似树上两点间距离 显然,这棵树是$Parent$树 那么,跑一遍$dfs$即可 对于边权,$lcp$是最长公共前缀,而$len$表示同一$endpos$集合中最长子串长度,因此能够表示$lcp$,同 阅读全文
posted @ 2020-07-23 15:49 GK0328 阅读(90) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P1445 数论 \[ \frac{1}{x}+\frac{1}{y}=\frac{1}{n!} \\ (x+y)n!=xy\\ xy-(x+y)n!+(n!)^2=(n!)^2\\ (x-n!)(y-n!)=(n!)^2\\ 令a= 阅读全文
posted @ 2020-07-23 15:13 GK0328 阅读(84) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/CF2B 动态规划 \[ f[i][j]表示从(1,1)走到(i,j)最少拥有的因子2数量\\ g[i][j]表示从(1,1)走到(i,j)最少拥有的因子5数量\\ 转移显然\\ 同时记录路径\\ 取ans=min(f[n][n],g 阅读全文
posted @ 2020-07-23 08:53 GK0328 阅读(97) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P4240 参考blog 欧拉函数/莫比乌斯反演 结论: \[ \varphi(ij)=\frac{\varphi(i)\varphi(j)\gcd(i,j)}{\varphi(\gcd(i,j))} \] 证明见此处 正常操作之后, 阅读全文
posted @ 2020-07-23 08:17 GK0328 阅读(104) 评论(0) 推荐(0) 编辑