04 2021 档案
摘要:题目链接:C. The Sports Festival 思路:区间DP,如果我们将这些数放在一个数轴上可以发现最优解的一些性质,比方说已排序后的序列[。。。。11,12,13,14],假设我们前面已经有选择过的数了,我们选择的时候一定是先选择13在选择14,因为,设没选择13之前的最小值为
阅读全文
摘要:题目链接:L3-011 直捣黄龙 思路:提供两种思路,一种dfs嗯搜,一种迪杰斯特拉,因为数据量小,随便过,就是麻烦 #include<set> #include<iostream> #include<cstring> #include<cmath> #include<cstdi
阅读全文
摘要:题目链接:L3-018 森森美图 题意:这个题的题意很迷,大概意思就是给你一个起点一个终点,然后起点和终点连线的直线将图划分成两部分,然后分别求这两部分的起点到终点的最短路径val相加,需要注意的是,对于边权的计算,这个题边权的计算有点迷,大概就是若a->b->c均不是斜向边,那么总边权为$a+b+
阅读全文
摘要:题目链接:D. Playlist 题意:略 思路:模拟,先思考我们需要完成什么操作,因为数组是级别的,所以用遍历的方式一次次的删除,太慢,所以我们需要一种数据结构,支持插入,删除,查找,遍历,且最坏时间复杂度是,平衡树恰巧能够干这个活,所以我们选择用set来处理
阅读全文
摘要:题目链接:E. Cheap Dinner 题意:略 思路:一开始先写了一个的,然后发现是T,证明方法没什么问题,然后发现他虽然能连接的边数目是不过不能连接的边最多也就这个级别,就算一个一个遍历也可以接受,不如从第一号菜开始,sort根据第一号菜大小排序,然后对于第二
阅读全文
摘要:链接:L3-017 森森快递 题意:略 思路:本来想的是dfs来做,不过最后做假了,最后一想想起来一个贪心的做法,我们必须让它的范围尽可能的小,因为他只有范围尽可能的小,才能够尽量不影响别的区间,所以我按区间范围从小到大排序,再用线段树来做,成功WA在最后一个点上,正确做法是贪心,**是根据区间右端
阅读全文
摘要:题目链接:E. Colorings and Dominoes 思路:我们先考虑一种最简单的情况:oooooo,我们用1代表红色,0代表蓝色,我们先计算他对于5个o的情况来说,多增加了几个,因为一个多米诺骨牌占2格,所以形如000011这种情况,这在他的上一种情况(00001)中是显然多增加了1,那么
阅读全文
摘要:题目链接:C. Pekora and Trampoline 思路:差分,经过仔细思考可以发现,最优解一定是都在1这个位置进行跳跃,因为假设1这个位置上的a[1]=1,那么他会跳到2,也就是具有传递性,直到跳到一个value不为1的地方,这和一开始就在该位置跳是一样的。证明了这个之后,我们进一步思考可
阅读全文
摘要:题目链接:D. Zookeeper and The Infinite Zoo 思路: 我们在图中展现11011->10110100有边,图中显示的是让11011的第一个1与10110100中第一个1对齐的操作,如此可见,设a到b有边,那么a的二进制表示的第一个1必须小于等于b的二进制表示的第一个1的
阅读全文
摘要:题目链接:D. 3-Coloring 题意:略; 思路:和答案思路不一样,开始设两个对角线一个是从(1,1)开始,另一个是从(2,1)开始然后开始处理,这两个对角线一个是奇数行的对角线,一个是偶数行的对角线,比方说一个对角线(2,1),(4,1),(6,1)是偶数行对角线,然后保证该对角线上是同一种
阅读全文
摘要:题目链接:C. K-beautiful Strings 题意:略 思路:本来这题我的思路是错误的,当时也考虑贪心的做法,但想法还是不完备,参考了大神的做法之后写出来了一份代码,方法是对于从n-1到0的每一位进行考虑,因为题目说的是目标串要大于等于当前串,于是我们肯定只从后往前改最少位才能获得最优解,
阅读全文