首页 > 其他分享 >批题选做 #1

批题选做 #1

时间:2024-03-23 23:34:23浏览次数:18  
标签:分树 le log 批题 64 建点

QOJ3047 Wind of Change

自己的想法是对第一棵点分治,第二棵建点分树然后暴力跳 \(fa\) 处理,这样就是 \(O(n\log^2 n)\) 的。

但是可以写得更优雅!直接对两棵树建点分树,把 \(O(n\log n)\) 个点对分别挂在分治中心(第一棵)和节点(第二棵)上,这样码量很小。

QOJ3276 [CTT 2021 D3T2] 出题高手

乱搞题。

随组数据发现前缀和值域是 \(O(n)\) 的,并且有用的点对也是 \(O(n)\) 的,于是可以把点对处理出来扫描线处理。

问题是怎么找有用的点对,我的做法是枚举左端点 \(l\) 每次 \(r\) 跳 \(64\) 步看 \([r, r + 64)\) 这个区间里面分母取 \(r - l + 1\) 有没有可能有解的答案,没有直接逃过否则暴力。这样能跑 \(n\le 10^5\)。

\(n = 5\times 10^5, q = 1\) 理论上将调下块长就过了,但是好像只取 \(r - l + 1\le 500\) 就够了。Trash 题懒得想了。

LOJ3001 [JOISC 2015 D3T1] AAQQZ

垃圾分类讨论。

感觉就那几种情况但是有一车细节问题,搬到联考里面大样例全是脚造的能调个鬼啊。

没看题解自己实现的,最后还是咬着牙对着数据把它调对了。

标签:分树,le,log,批题,64,建点
From: https://www.cnblogs.com/zlxFTH/p/18086709

相关文章