codeforces题解
文章平均质量分 50
以本人的学习路程,以一名初学者的角度讲解每到cf题的思路由来和详细的代码解释
monkeys-King
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CF1793D题解
看到这个题,我们第一眼的算法的是什么呢,好吧,没有算法,枚举至上!2:当wz1[i] < l && wz2[i] < l时,左端点取值范围为max(wz1[i],wz2[i])。3:wz1[i]和wz2[i]全在区间右侧时:右端点取值范围min(wz1[i],wz2[i]),左端点取值范围为【1,l】1:当l<=wz1[i]<=r或l<=wz2[i]<=r时,与重要思路中i不可出现在区间中相对,不可能。4区间被包在中间:左端点取值范围为 (wz1[i],l],右端点取值范围【r,wz2[i]),原创 2023-12-17 21:52:49 · 522 阅读 · 1 评论 -
CF1898E题解
。原创 2023-12-15 22:42:12 · 498 阅读 · 0 评论 -
CF1873G题解
我是用这种方式理解的: 我们假设B是某岛国,它会往大海中排核废水,如果它左右两边有A,它就会去其他地方排水,而它原来所在的地方就会变成一片废墟C。2:x个不相邻的B(B不在开头和结尾)肯定将A分成x+1块。再用A的总数减去最小值即可。3:如果开头或结尾有B,或者有两个以上B连在一起。那么就能取到所有的A,直接输出A的总和即可。1:将一个子串 AB 转换为 BC 并获得一枚金币。2:将一个字串 BA 转换为 CB 并获得一枚金币。你可以进行若干次操作,问最多能获得多少枚金币。1:全是A或全是B肯定输出0。原创 2023-11-27 21:35:17 · 379 阅读 · 0 评论 -
CF1898D题解
那么这题就从数学问题变成了几何问题,就是给一堆端点让你求线段长最值,但你可以将两条线段的端点互换,那么互换端点有什么性质么?看到两个数之差的绝对值时,那必须想到两个点之间的距离啊(其实我也是想了很久才想到,我是不是要回七年级重修了嘤嘤嘤)两个长度均为 n 的数组 a,b一次操作可以选择两个下标 i,j,交换bi,bj。那么大体的思路就出来了选择两条相离的线段使这两条线段之间的距离最远即。不知为什么这题在洛谷上开O2优化就超时,关了O2就AC,离谱!很明显看出改完后线段长度竟然变小了,那肯定不能选。原创 2023-12-09 10:46:47 · 431 阅读 · 1 评论
分享