上一页 1 2 3 4 5 6 ··· 12 下一页
摘要: 11.1 JOI的神题 T1 第一个点就是所有边到它的那个方向的边的权值和。 之后以这一个点为根,第二个点就是根到这个点的另外一个方向的链,。 结论题。可以用反证法证明。E=1和E=2 拿出来单独讨论,之后用E=2的根,每一次删最多的那个就可以了。 这里需要用线段树维护dfs序。 考场差点写出来了。 阅读全文
posted @ 2021-11-02 17:52 lei_yu 阅读(35) 评论(0) 推荐(1) 编辑
摘要: 爆了... T1 考虑树形背包。 显然,最优策略一定是在图上找一个节点数为K的子图拿出来,然后答案是这个导出子图每条边的权值乘2减去一个直径。 这个东西不好做,但是我们可以树形dp。 设$f(i,j,0/1/2)$为第i个点在这个联通块内时,这个选择了的连通块的大小为j,i及其子树内部无直径/有直径 阅读全文
posted @ 2021-10-31 22:07 lei_yu 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 今天的题比较简单,然而巴蜀的dalao们几乎都接近AK/kk T1 发现就是一个加限制汉诺塔。用矩阵快速幂计算。 但是最后一个点过不去。 考虑卡常: 1、向量乘矩阵可以n平方实现。 2、可以预处理出$2^i$的矩阵。 3、每一次直接减去$lowbit$以减少复杂度。 如果还是过不去,有一种叫光速乘的 阅读全文
posted @ 2021-10-29 18:55 lei_yu 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 我要重开!!!! Day -1 上午最后一场模拟赛,把所有的可得分都拿了,考得比涂神还好,我真是high~到不行啊。 改了一下题之后,晚上看了一下"组合数学",了解了一些之前没有学过的考纲内出现的奇怪内容 Day 0 上午又看了一点高斯消元和线性代数,害怕他考奇怪的线性基又看了看线性基。 然后又看了 阅读全文
posted @ 2021-10-25 08:30 lei_yu 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 这道题的核心思路在于把多个元素的集合转化为最多3个元素的集合,然后再通过偏序问题常用方法得到答案。 首先对于任何一个集合,丢掉一个不对答案产生贡献(abc都比其它的小)的元素不会对答案造成影响。因此我们对每一种集合都只保留能够产生贡献即至少有一个(a/b/c)是最大值的元素。 那么任何一个集合都最多 阅读全文
posted @ 2021-10-21 08:08 lei_yu 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 费用提前计算。 我们可以不记录当前是第多少段,而是转化为每分一段就会给后面的所有工作增加一个常数的时间,提前计算这一部分代价即可。 #include<bits/stdc++.h> #define int long long using namespace std; #define orz cout< 阅读全文
posted @ 2021-10-19 19:38 lei_yu 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 裂开。。。 T1 求逆元见 https://www.cnblogs.com/lytql/p/15021752.html 然后我们考虑期望的线性性,求出每一个点都期望答案的贡献。 一个点被选中的概率其实只和第一个点$A_1$和当前点$A_x$有关,和其它的$A$无关。 我想到一种绝妙的理解方法! 我们 阅读全文
posted @ 2021-10-18 19:23 lei_yu 阅读(48) 评论(4) 推荐(1) 编辑
摘要: 当需要求模某个数得到某个值的个数之类的东西时,如果模数比较小,可以考虑把模这个数的结果记入DP数组中! 这个题就是这样。我们枚举每一位上的数字和是多少直接作为模数。最后问的就是模这个数等于0且每一位加起来等于这个数的数的个数。 数位dp就可以解决了。 这里注意一下我们只需要 阅读全文
posted @ 2021-10-16 09:37 lei_yu 阅读(25) 评论(0) 推荐(0) 编辑
摘要: a 阅读全文
posted @ 2021-10-15 21:23 lei_yu 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 这东西有啥用啊。。。 即需要维护一棵一堆点权为二元组的树。其中一种权需要满足二叉搜索树的性质,另外一种点权需要满足二叉堆的性质。 建树方法: 按照二叉搜索树那个权值从小到大排序,那么当前插入这个点一定是二叉搜索树中的最大点。假设这是一个大根堆: 因此只有三种可行情况: 1、放根节点、其它的作为左子树 阅读全文
posted @ 2021-10-15 09:24 lei_yu 阅读(39) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 12 下一页