![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Codeforces
文章平均质量分 53
zxxzy840
这个作者很懒,什么都没留下…
展开
-
CF Global Round 21 D/CF1696D Permutation Graph (单调栈,线段树)
题面:https://codeforces.com/contest/1696/problem/D解题思路:题目说是要建图,刚开始我想的是线段树建图,差点就放弃了(忘记怎么敲了)然后就发现其实和之前一道,问是否能满足每一个区间和都大于0的题目挺像的,所以不用建图了。因为是从左往右跳,首先我们知道以now为左端点,右端点可以是啥情况。所以得先用单调栈,把每个的右边第一个大(小)的位置求出来,记为lmn[ ],lmx[ ]。找到了范围,下一步就是找这个区间内可以跳的点。假设左端点now是最大值,且我们知道 i ,原创 2022-06-26 12:20:37 · 357 阅读 · 1 评论 -
CF1961 E Number of Groups(并查集)
题面:https://codeforces.com/contest/1691/problem/E这道题真的几把坑。解题思路:有几组连在一起,所以很显然会想到并查集。假设我们现在先不看颜色,那很自然的人类的想法, 就是从左到右找有没有断点。这样可以判断就几组,但是无法判断连的关系,所以思考连在一起的关系,就是所有我们只要给2n个点(左端点和右端点)拍个序,扫过去,如果是左端点就存进来,如果是右端点就将对应的组删去。假如我们走到pos点且这个点是左端点,这时候有5个组还在里面,那个这个组和这5个组就是相连的。(原创 2022-06-09 18:15:43 · 296 阅读 · 0 评论 -
CF1674D. A-B-C Sort
题面放入b中的次序越后面,放入c中次序越前面,不过这个关系并不是严格的,因为在某些条件可以微调左右位置。先看1 2 2 3 3 4 4,你会发现这个序列不管你怎么操作,都是对的。2 2 3 3 4 4 也是这样。分情况来看, 如果是奇数,那么a的第一个肯定也是c的第一个。如果是偶数个,那么a的每两个((1,2),(3,4)……)肯定在c中也是对应两个的位置,但是由于b的存在,可以改变这两个的位置。所以要求c不减,那么只需要a的每个长度为2的区间不减就行了,奇数多判断第一个即可。#include原创 2022-05-03 10:25:18 · 574 阅读 · 0 评论