11 2021 档案

摘要:Day-1 惨遭遣返······ 这真是伟大的啊!! Day1 day 几好像没有意义,反正只有一天 T1 极致 H2O 机子跑得非常“快”,样例四直接飙出 1s 了! 确实无语 还担心过不了呢 提前把 \( 阅读全文
posted @ 2021-11-27 08:50 leiyuanze 阅读(48) 评论(0) 推荐(0) 编辑
摘要:Problem 元素带类型与权值,每次修改权值或类型,求区间每种类型和的 k 次方和 强制在线 Solution 显然简单分块,根据询问需要发现要 维护任意两块之间的答案,每种类型的权值在块中的前缀和 询问就很简单,考虑枚举散块出现的类型先去除其在 阅读全文
posted @ 2021-11-19 15:14 leiyuanze 阅读(47) 评论(0) 推荐(0) 编辑
摘要:Problem 强制在线静态询问区间众数 Solution 不得不说 vector 是真的慢 做 LOJ 数列分块入门 9 卡时间卡了两个小时没成功 说说够快得做法 对原数列分块 考虑已经预处理出任意两块之间得答案 散块中出现的颜色 阅读全文
posted @ 2021-11-19 14:54 leiyuanze 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Solution 涉及到插入,分块需要动态维护块内的元素及相对位置 于是妙用 vector 学到了 insert 操作,在某个迭代器前插入元素 这样我们对元数列分块,块长 n 每个块用 vector 维护 阅读全文
posted @ 2021-11-19 14:39 leiyuanze 阅读(102) 评论(0) 推荐(0) 编辑
摘要:Solution 一看有区间赋值直接上 ODT Code #include <cstdio> #include <iostream> #include <set> #define re register using namespace std; i 阅读全文
posted @ 2021-11-19 14:32 leiyuanze 阅读(30) 评论(0) 推荐(0) 编辑
摘要:Solution 显然 dpfx=minysubtreexfy+axby 必然可以用李超线段树解决 在树上就线段树合并即可 当然可以树上启发式合并省去线段树合并,然后李超树维护 不过显然前者更好打 既然是斜率优化, 阅读全文
posted @ 2021-11-16 20:13 leiyuanze 阅读(30) 评论(0) 推荐(0) 编辑
摘要:Solution 明显有 DP fi=fj+1(j<i,Mxjai,ajMni) 然后 CDQ 分治即可 注意分治顺序 Code #include <cstdio> #include 阅读全文
posted @ 2021-11-14 21:11 leiyuanze 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Solution 一眼 ODT 为避免每次都数颜色数量,提前记录下来,每次修改更新下 Code #include <cstdio> #include <iostream> #include <set> #define re register usi 阅读全文
posted @ 2021-11-14 20:08 leiyuanze 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Naive Solition 当然是 ODT 暴力啦 Luogu 煞费苦心加强了数据,于是就过不了了。。。 不过 LibreOJ 上可以过 #include <cstdio> #include <iostream> #include <set> #def 阅读全文
posted @ 2021-11-14 11:37 leiyuanze 阅读(42) 评论(0) 推荐(0) 编辑
摘要:Solution 不考虑起点区间和终点区间的限制,求区间中位数 可以二分中位数,大于等于中位数的位置赋为 1,小于的位置赋 1 当区间和大于等于 0 时此数才可能为中位数 因为有多个询问,但中位数数值只可能有 n 个 所以预处理时枚举当前中位数 阅读全文
posted @ 2021-11-13 14:48 leiyuanze 阅读(39) 评论(0) 推荐(0) 编辑
摘要:Problem 有一个有向完全图,所有的 uv 的边权为 au 修改 m 此有向边边权,求最终图上两两点对的最短路之和 1n105,1m3000,1au106 \(\te 阅读全文
posted @ 2021-11-13 14:19 leiyuanze 阅读(77) 评论(0) 推荐(0) 编辑
摘要:简要题解 这套题比较 H2O 建议题目背景美文共赏 T1 显然一个 O(n3) 不能过的 dp 然而过了?! 用心在该卡时间的地方卡一卡 Code #include <cstdio> #include <algorithm> # 阅读全文
posted @ 2021-11-10 17:08 leiyuanze 阅读(117) 评论(0) 推荐(0) 编辑
摘要:Solution 树上主席树板子 Code #include <cstdio> #include <algorithm> #define re register using namespace std; const int N = 1e5 + 5; int 阅读全文
posted @ 2021-11-09 21:19 leiyuanze 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Solution 又忘了线段树分治!! 显然维护一个上凸包 发现加点和删点可以变成限制存在时间 然后把点放在线段树上,线段树下标表示时间 加点时先把点按横坐标排序,然后就可以单调队列维护每个线段树节点的上凸包 询问再按斜率排序,这样可以弹点而不需要二分了 \(O(n \log 阅读全文
posted @ 2021-11-05 13:48 leiyuanze 阅读(27) 评论(0) 推荐(0) 编辑
摘要:Solution 很容易想到 dp fi=fj+(hihj)2+k=i+1j1wksi=k=1iwi 则 \[ f_i = s_{i-1} + h_i^2 -2h_j \ 阅读全文
posted @ 2021-11-05 13:28 leiyuanze 阅读(35) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示