上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 80 下一页
摘要: 主要是复习二分+哈希的思想,考虑贡献的思想也比较自然,题目也不是很难 然后想一下怎么 用差分维护一次项系数和常数项系数,具体下面的代码 #include<bits/stdc++.h> #define ll long long #define ULL unsigned long long using 阅读全文
posted @ 2024-07-11 13:59 最爱丁珰 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 可以就看官方解答,写的比较清楚 这个引理好像比较重要,可以记住,看看洛谷题解的思路 说下官方解答最后一段的意思:这么做就可以保证不会因为添加\(a,b,c\)三个字母中的某一个字母而产生回文串,比如添加\(a\),添加的地方前面是\(c\)(或"a symbol that wasn't used") 阅读全文
posted @ 2024-07-10 21:07 最爱丁珰 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 看这篇题解 只能说以后看到hard version的先将easy version的做一遍,剩下的想法也比较自然了 阅读全文
posted @ 2024-07-10 19:16 最爱丁珰 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 这里使用观察法得出做这道题目的做法 注意到数据范围\(k<n<k^2\),而询问的次数不能超过\(100\),所以很明显的提示我们询问的次数在\(\frac{n}{k}\)的左右 于是可以得出做法,具体见代码,非常easy,可以尝试证明一下,注意别忘了\(n,k\)都是偶数 阅读全文
posted @ 2024-07-09 20:58 最爱丁珰 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 这个就看官方题解就好了,写的很清楚 考试的时候把easy version给做出来了,但是对于hard version确实没有想到可以转换成位运算 所以以后看到\(2^x\),不妨想一下是不是位运算,这里将最后的式子一列就知道是位运算了 阅读全文
posted @ 2024-07-09 20:08 最爱丁珰 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 先来讲一下我的做法 在考虑特殊元素无果之后,我们尝试模拟法,即模拟什么时候从放一个序列的元素变成放另一个序列的元素 由于对称性,我们不妨假设最开始放的\(A\) 那么就有\(A[1]<B[1]\),假设指针一直到\(i\),则\(A[i]>B[1]\),然后\(A[1\)~\(i-1]\)都被放入了 阅读全文
posted @ 2024-07-09 19:05 最爱丁珰 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 这道题目与“分形之城”这道题目很像 我的赛时代码是用数组记录的,实际上洛谷第一篇题解的代码,更完美的利用了分而治之的思想(子问题是相同的) 阅读全文
posted @ 2024-07-09 12:05 最爱丁珰 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 有利用数学归纳法思想的扩展法,就有反过来的删除法,这里利用删除法 考虑对于一颗合法的树,显然删除某两个叶子,会让其共同父亲变成叶子,这就形成了一个递归的过程;而某两个叶子在序列\(a\)中也一定是相邻的,而且很容易发现特征,就是其\(a\)的大小相差\(1\) 但是现在的问题就是我们不知道删除哪两个 阅读全文
posted @ 2024-07-08 22:56 最爱丁珰 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 复习虚点就好了,可以看洛谷第一篇题解 另一种处理方式是认为每条边的长度都是\(1\),求出最短路之后将求出的最短路除以\(2\)就好了 阅读全文
posted @ 2024-07-08 21:21 最爱丁珰 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 首先一个很显然的地方就是使用传送门肯定是在叶子节点使用,我们来考虑一下整个过程是怎么样的 为了方便,我们不妨假设可以传送回根节点\(k+1\)次,然后要求最后回到根节点 我们先从根节点走到某一个叶子结点,然后再从这个叶子节点走到另一个叶子节点,然后继续走到另一个叶子节点,一直这么下去,最后从某一个叶 阅读全文
posted @ 2024-07-08 18:25 最爱丁珰 阅读(1) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 80 下一页