KEEP IT UP!
追踪最近的用户名外显变动记录。
最近的文章、讨论、云剪贴板与社区记录
如果你是把所有都绑在一个结构体里,那么请直接把答案 ```ans``` 放在结构体里而不是单独开一个数组,因为你 ```ans``` 的加减是和重复点个数有关的,```ans``` 需要跟着排否则就乱了。 其他可能出的问题: - 树状数组不能 ```memset``` 否则会超时,加了什么就减回去。注意这里的“减”不要…
在文章《矩阵快速幂入门》发表评论:
%%%
在讨论《警示后人》回复:
恭迎@[Takato_](luogu://user/714048) 大佬莅临,膜拜谦虚的@[Takato_](luogu://user/714048) 大佬%%%
在讨论《警示后人》回复:
恭迎@[DimStar](luogu://user/755179) 大佬莅临,膜拜谦虚的@[DimStar](luogu://user/755179) 大佬%%%
在讨论《警示后人》回复:
**严肃膜拜谦虚的@[DimStar](luogu://user/755179) 大佬%%%**
如果你的转移方程和我一样,判颜色相同是 ```j + 1``` 但转移是 ```j```,部分暴力代码如下: ```cpp if(a[j + 1] != a[i]) continue; int cnt = (s[i] - s[j + 1] + 1); f[i] = max(f[i], f[j] + 1ll * a[i]…
在文章《轮廓线DP》发表评论:
%%%
如果你思路参考进阶指南,但是死活调不对,请检查你的边界条件和转移顺序是否正确: 1. 不要加 ```min(变量, m 或 n - 1 等类似的判断)``` 类似的取 min 的上边界,因为你后续的转移是依托前面算的值。这个有关 ```m``` 和 ```n``` 的判断在最后答案统计的时候用就行了。 2. 注意下边界…
在讨论《如果你认为你的思路正确但63pts》回复:
@[Mortis_szt](luogu://user/955066) 同学,讨论区关联题目 P6064
如果你跟我一样无脑套模板,断环成链并遍历 $[1, 2n]$ 直接 dp,这样写是不一定正确的。因为 $f_{i, j}$ 表示的前 $i$ 用 $j$ 的最大值,遍历到 $2n$ 有可能会选到重复的时间段(因为你没法保证这里的 $f_{2n, m}$ 选的时间段在连续的一天里。如果用这个写法,你需要重新思考怎么统计答…
在讨论《斜率优化关于横坐标相等问题》回复:
总结一下,因为我说的那种情况不可能出现。加高、低、中三个点,在加低点的时候就会把高点弹出去(因为高点前总会有一个横坐标不相同的点),最后队列就变成了低、中点,满足下凸壳性质。 如果高点的横坐标与最开始压入的0相同了,说明这些费用系数都是0,最后纵坐标都是0,也就没什么好说的了。 感谢@[pig1121](luogu:/…
如题,动态规划斜率优化,在主函数单调队列的 while循环用乘法一般这么写(f是纵坐标,c是横坐标): ```cpp while(head = (f[i] - f[q[tail]]) * (c[q[tail]] - c[q[tail - 1]])) --tail; ``` 用除法也差不多。 但是我想问,如果三点横坐标相…
在讨论《警示后人(5pts)》回复:
其实也不一定是精度,也有可能是因为横坐标相等算斜率用除法就会报错……
为了以防精度问题,算斜率的除法要移项变成乘法(注意不等式的移项,负数移项要变号)。 直接从 [P2365](https://www.luogu.com.cn/problem/P2365) 暴力代码基础上优化的同学,记得把空间开大不然会 WA + RE。
临时数组拷贝原数组的时候需要拷贝一整个块,而不是只拷贝修改的部分。因为临时数组是排序过的,并不对应原数组下标。 例如,错误示范: ```cpp for(int i = l; i <= r; ++i) b[i] = (a[i] += c); ``` 正确示范: ```cpp for(int i = l; i <= r;…
在文章《可持久化线段树 / 主席树》发表评论:
是画错了,现已经修改
在文章《P11743 Dynamic Array Problem题解》发表评论:
%%%
在讨论《多倍经验》回复:
@[Grammar_hbw](luogu://user/856004) %%%
在讨论《多倍经验》回复:
@[fan_xiaoyi](luogu://user/1495223) 补药再水谷了(
- [P3567 [POI 2014] KUR-Couriers](https://www.luogu.com.cn/problem/P3567):本题。 - [P7252 [JSOI2011] 棒棒糖](https://www.luogu.com.cn/problem/P7252):$n \le 5e4$,但是注意值…
初学者对该类数据结构的评价:思维难度:$5$;代码难度:$5$;应用难度:$+\infty$;调试难度:$未知$。 本文的每一个知识点都遵循“原理-实现-相关题目/拓展”的顺序讲解,**不提供**完整代码。若按照目录从前往后阅读本文,并独立写出完整代码,您将学会可持久化线段树的模板和较为基础的应用。较为进阶和困难的应用…
- 不要忘了少输入一个变量而导致 RE/WA(话说真的有人会犯这样低级的错误吗…… - 动态开点字典树(是这个名字吗?),tree 数组要开够空间。理论上一共 $n$ 个节点,每个节点最多贡献 $\log a_i$ 个节点,共 $n \log n$ 个节点,也就是说开 $19 \times N = 9.5 \times…
在讨论《为什么不超时?》回复:
@[bcdmwSjy](luogu://user/514727) @[lijingshu_304775](luogu://user/1019968) 感谢两位大佬orz是我傻了 已关
rt,此题用线段树分治。 对于每一条边都会建最多 $\log w$ 个区间覆盖在线段树节点上。按秩合并并查集是 $\log n$ 的。所以总时间复杂度是 $O(m \log w \log n)$ 的。 按照题中的数据范围,似乎只能过 80 分。 所以为什么不超时?是数据水了还是本来就不会超时? 蒟蒻求证明orz
## 题意 给定一个 $n \times m$ 的 01 矩阵 $a$,给定 $q$ 个询问,每次给出一个询问矩形的左上角 $(x1, y1)$ 和右下角 $(x2, y2)$,问这个矩形内的最大全 1 正方形的边长是多少。$1 \le n,m \le 1000$,$1 \le q \le 10^6$。 ## 思路 首…
在文章《CF gym 105384 K. Knocker 题解》发表评论:
%%%坐等更新
$(a_i + k) ^2 = a_i ^ 2 + 2a_ik + k^2$,应处理成原平方和 + **原**序列和 $\times 2 \times k$ + $k^2 \times 区间长度$,注意是“原序列和”(即平方和变量在序列和变量前更新),末尾还要乘区间长度。 注意求平均数等,最后是除以 $r - l +…
在讨论《记得开long long》回复:
@[Feynman5210](luogu://user/1085788) 谢谢,~~我傻了~~。 感谢回答,已关。