摘要: 在写提前先花一点时间想好自己的代码里有什么,这样就不用像我这样调一天了。然后在遇到比较相似的代码时,可以考虑并到一个函数里,比如说push_up和getsum里对左区间和右区间的合并,我一般是写在一个函数里的qwq。 在调了超过2h时可以考虑重复上面的过程(重构在思路清晰的情况下是很快的,反正我重构 阅读全文
posted @ 2024-02-28 14:15 wuhupai 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 非常有思维的一道题 在遇到计数类dp时,我们首先要找到子问题。然后我们要设计dp状态(这个通常就是当前的计数),然后转移方程要做到不重不漏(这我感觉是最难的地方)。 对于这题,我们先设计出dp方程:dp[i]代表1-i都保留时序列的种类。然后我们可以想到如果i-j能消成只有a[i],a[j],那么d 阅读全文
posted @ 2024-02-28 14:01 wuhupai 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 花了2d打磨出来的题目,觉得很有意思。 先讲点无关的,这道题有两版,但都是对要求的量进行改动。 1.第一次要求的是y属性为a与y属性为b的两个节点的路径权值之和,对于要求的这个量,我们设v[i]为i到根节点的权值之和。那么我们先对a,b进行质因数分解,设dcg为a,b分解质因数后最长公共前缀的乘积, 阅读全文
posted @ 2024-02-27 10:11 wuhupai 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 这题其实挺简单的...... 首先我们手模样例,对于第一组样例其实就是在1-n之间取一个数,求取到的数的期望。所以E(x)=\(\frac{1 + n}{2}\)。 对于第二组样例,我们首先将所有可能情况枚举出来: 10 10 10 10 10 10 10 10 10 10 9 9 9 9 9 9 阅读全文
posted @ 2024-02-27 10:11 wuhupai 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 难度:2 看到位运算想到拆位。因为是与所以对于 \([l,r]\) 区间内在二进制下,如果它是 1 则 \([l,r]\) 区间都是 1,如果是 0 则 \([l,r]\) 区间内至少有 1 个 0。因为是区间所以不难想到用线段树处理,而线段树维护的就是区间内1的个数。 考虑如何处理。首先对于q拆位 阅读全文
posted @ 2024-02-27 10:10 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 难度2 还是比较巧妙的。 看到这种操作题,思路基本就是考虑用合适的数据结构去求解每一个操作。在遇到一些比较难搞的操作时可以考虑转换。对于一些删除的操作一定要小心,除非很简单,否则大概率是转换 看到操作一,因为这个数据范围想到只用存一个x就可以了 看到操作二,是删除,等等 看到操作三,考虑二分再加加减 阅读全文
posted @ 2024-02-27 10:09 wuhupai 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 难度2 比较有意思的dp题 首先发现这就是将一个环从中间一点一点剥开的过程。其次观察到joi取时右端点减左端点为偶数,ioi取时为奇数,所以一次一次dp即可。 看到这种题时,发现有环,就要想到双倍延长再模拟一下题意,手玩一下即可 // LUOGU_RID: 117752061 #include<bi 阅读全文
posted @ 2024-02-27 10:08 wuhupai 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 难度1 这题看到一点思路也没有,但是看到最小操作数想到二分,dp和贪心,二分答案的check显然不会,贪心不会。发现对于一行,前面的\(i-2\)是不会影响的,这一行也不会影响后面的\(i+2\)行,所以是dp。考虑如何设计状态因为\(i-1\)和\(i+1\)行都会影响,所以设计出来一个dp[i] 阅读全文
posted @ 2024-02-27 10:05 wuhupai 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 难度 1+ 想了还是挺久的。首先对于这种区间的问题,比较常见的套路就是枚举右端点\(l_{i}\)通过数据结构算出贡献。em,因为是有关二进制的问题,考虑拆位,如果\(a_{i}\)或上前面的要变成新的数,那么必有一位0变成了1,所以想到开21颗平衡树找下前驱后继就可以了。 上面足以通过,但我们发现 阅读全文
posted @ 2024-02-27 10:05 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 难度1 em还是一道比较套路的题目。观察发现,如果当\(r_{i}=1\)时他的两把钥匙状态是相同的,当\(r_{i}=0\)时他的两把钥匙状态是不同的,对于这种相同不同的问题可以考虑并差集,状态一样就一样的并在一起,否则就把不一样的并在一起 所以以后看见这些问题(a=b+k,a=!b,a=b)都可 阅读全文
posted @ 2024-02-27 10:04 wuhupai 阅读(3) 评论(0) 推荐(0) 编辑