![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
构造
sharp_legendgod
这个作者很懒,什么都没留下…
展开
-
CF1559D2 Mocha and Diana (Hard Version) 题解
CF1559D2 Mocha and Diana (Hard Version)CF1559D2 Mocha and Diana (Hard Version)做过 /qd暴力就是直接枚举每条边是否被加入。证明一下这个东西:如果说存在有一条边不被加入,然后可以多增加两条边。那么增加的两条边肯定是连接了 333 个连通块,而断掉一条边只能产生 222 个连通块,说明肯定有一个连通块之前没有加入,和最优秀的情况矛盾,所以成立。那么根据之前这个结论我们直接进行暴力加边即可。我们发现对于最终的情原创 2021-10-01 08:43:59 · 127 阅读 · 0 评论 -
CF449C Jzzhu and Apples 题解
CF449C Jzzhu and ApplesCF449C Jzzhu and Apples肯定会想到偶数肯定需要来匹配的,之后发现对于奇数的情况,对于每一个奇数肯定都是若干个质数的倍数。那么越大的质数越难被匹配,我们考虑从大到小对于质数进行考虑。对于当前质数 ppp 找到所有没有被匹配过的数,如果有偶数个直接进行匹配即可,不然的话肯定需要舍弃一个数,发现 222 是一个质数,那么我们舍弃一个 222 的倍数即可。这样可以发现匹配到最后我们最多舍弃一个数,不可能更优了。...原创 2021-10-01 08:19:24 · 118 阅读 · 0 评论 -
CF1375E Inversion SwapSort 题解
CF1375E Inversion SwapSortCF1375E Inversion SwapSort发现逆序对不是很好入手,考虑最终构成的序列是单调递增的情况。不妨考虑这是一个排列的情况。显然离散化一下答案不会改变。发现 nnn 肯定是在最后面,那么对于一开始的序列我们不妨考虑将 nnn 放到最后面之后转化成一个子问题。那么对于一个合法的子问题,我们必须保证对于原来 au<ava_u < a_vau<av 的情况,还有 au<ava_u < a_va原创 2021-10-01 07:58:04 · 128 阅读 · 0 评论 -
CF1380D Berserk And Fireball 题解
CF1380D Berserk And FireballCF1380D Berserk And Fireball其实不能算一个构造题,主要难在代码实现。考虑每一个区间,对于这个区间选择一个最优的方法删除即可。显然我们考虑用当前区间最大的数去删除其他的数,之后再将其删除即可。#include <bits/stdc++.h>using namespace std;//#define Fread//#define Getmod#ifdef Freadchar buf[1原创 2021-09-30 20:07:23 · 81 阅读 · 0 评论 -
CF1391D 505 题解
CF1391D 505CF1391D 505直接粗略看去没有什么可以入手的地方,考虑什么时候是不合法的。发现样例给出了 7,157, 157,15 的时候是不合法的。考虑手造几组小样例,发现如果一个大的平方矩阵恰好包含偶数个小的平方矩阵就是不合法的。考虑 a2=k×b2a^2 = k\times b^2a2=k×b2 直接暴力带入一下 b=2b = 2b=2 的情况,发现 a=4,k=4a = 4, k = 4a=4,k=4。那么显然对于 n>3,m>3n > 3, m &g原创 2021-09-30 15:29:42 · 109 阅读 · 0 评论 -
GCJ2015 还原集合 题解
GCJ2015 还原集合提交地址找不到 /qd。假设说我们知道一个数 x,x>0x, x > 0x,x>0 我们考虑对其进行背包,不妨假设上一个背包的数组为 fff。发现对于一个新的数组位置 iii 会对应 i−x,xi - x, xi−x,x 两个位置。然后考虑一下 x,x<0x, x < 0x,x<0 的情况,位置 iii 会对应 x,i+xx, i + xx,i+x 两个位置。发现本质上还原的两个位置只相差了 xxx,所以我们最后还原出来的数列也只是原创 2021-09-30 14:50:21 · 195 阅读 · 0 评论 -
CF1416B Make Them Equal 题解
CF1416B Make Them EqualCF1416B Make Them Equal论我脑子有点问题这一事。发现如果 i=1i = 1i=1 这个肯定是很好做的,我们考虑将每个数都放到位置 111 上,每个数最多被使用 333 次,所以复杂度是 O(3(n−1))O(3(n - 1))O(3(n−1))。我们具体来说,对于一个位置 jjj,如果 j∣ajj | a_jj∣aj 显然我们直接将其放到位置 111 上即可,不然的话我们考虑将这个位置补齐即可。我们考虑通过归纳法证明这个原创 2021-09-30 14:07:45 · 165 阅读 · 0 评论 -
CF1385E Directing Edges 题解
CF1385E Directing EdgesCF1385E Directing Edges题目描述:给定一个图,有无向边和有向边。对于无向边进行定向,问能否给出一个方案使得定向后的图是无环的,图不一定要联通。我们先不考虑无向边,对于有向边组成的图,不妨进行一次拓扑排序找到每一个节点遍历的先后顺序。我们先判掉有环的情况,也就是存在一条边 u→vu \to vu→v 而且点 uuu 的遍历时间比 vvv 要晚。之后考虑我们肯定可以构造出一种合法的图,也就是对于所有的无向边我们考虑连接的两个几原创 2021-09-30 07:49:19 · 140 阅读 · 0 评论 -
CF1344B Monopole Magnets 题解
CF1344B Monopole MagnetsCF1344B Monopole Magnets多打 CFCFCF 你也会懂一点英语。笔者很菜,入手点是没有找到。就是考虑南磁铁不行的话,我们可以考虑一下两个黑色的格子的关系。也就是说如果这两个在同一个行的话,那么可以考虑到两个格子到当前行的南磁铁路径上肯定都是黑色的。那么我们考虑是否会存在两个南磁铁的情况,如果存在那么肯定是为了处理有两段黑色的情况,但是下面的南磁铁同样是可以吸引上面的北磁铁,那么这种情况肯定是不行的。所以可以得出第一个限原创 2021-09-28 15:59:15 · 119 阅读 · 0 评论 -
论低分构造题
2000 + 构造题原创 2021-09-28 10:27:59 · 131 阅读 · 0 评论