![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心
文章平均质量分 53
JXNU_SONG
这个作者很懒,什么都没留下…
展开
-
The 2021 CCPC Guilin Onsite D. Assumption is All You Need(贪心)
Assumption is All You Needhttps://codeforces.com/gym/103409/problem/D①从左往右按下标遍历,若 a[i]=b[i]a[i]=b[i]a[i]=b[i] 则无需再调整,写几个样例会发现调整会不断破坏更前面已经匹配好的位置,所以已经匹配好的就不考虑再做操作了。②若当前 a[i]<b[i]a[i]<b[i]a[i]<b[i] ,则直接没有答案,因为是操作逆序对,向后考虑操作只能换来更小值,不可能匹配上。③若 a[i]&g原创 2022-04-06 14:19:09 · 763 阅读 · 0 评论 -
2022牛客寒假算法基础集训营5 C 战棋小孩(逆序对完备证明贪心)
C 战棋小孩原题链接先亮个出题人的题解:出题人讲的还比较简洁清晰,但我认为证明的最后那里有个小跳步,可能出题人觉得比较显然就没有展开讲吧。首先做一次逆序交换答案会变劣是显然的,然后我们可以得知一个倒序排列的序列可以经过若干次逆序对交换变成这个序列经过全排列的任何一种情况。那么也就是说任何一种其它的排列都是经过这个倒序的排列经过若干次劣化得来的,所以答案只可能会变劣,因此倒序排列是最优的。CODE:#include <bits/stdc++.h>using namespace st原创 2022-02-23 16:53:43 · 603 阅读 · 0 评论 -
D. Backspace
D. Backspace 原题链接我们首先可以发现除了第一次,后面我们只能删除连续的偶数长度字符,也就是说我们留下来的字符的下标必须奇偶相间。那么我们现在考虑 sss 串的末尾字符,末尾字符显然是只能删掉偶数个(包括 000 ),也就是说,其实我们在 sss 串中保留的字符的最后一个的字符下标的奇偶性我们是可知的,其实现在就可以贪心求解了,因为我们已经得知了我们要留下来的字符的奇偶性。如果从末尾开始找的话,我们肯定找最靠后的符合奇偶性且和 ttt 串匹配的,因为这样才能留下更多字符。从头开始找的话,也.原创 2021-07-23 11:52:36 · 236 阅读 · 0 评论 -
G. Is Topo Logical?(贪心+拓扑排序理解)
G. Is Topo Logical?题目链接题目大意:给定 nnn 个点,再给两个有 nnn 个元素的序列,第一个序列表示初始 nnn 个点的入度,第二个序列表示由这 nnn 个点构成的图经过基于 BFSBFSBFS 的拓扑排序后的入度,输出一种合法的构图,若不可能构成图,就输出 −1-1−1 。解:(1)首先我们可以构建出最后经过拓扑后的图,也就是我们要对最后每个入度不为0的点建边,显然这些边的起点肯定只能来源于同样入度最后不为0的那些点,而且只要不连接自己,就随便连,直到满足自己的入度。(2原创 2021-04-28 22:11:35 · 150 阅读 · 0 评论