自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Codeforces 1220 D.Alex and Julian(思维)

链接Codeforces 1220 D.Alex and Julian题解首先如果BBB中全是奇数,那么自动根据奇偶分成二分图,此时如果给BBB中所有数同时乘上一个相同的222的xxx次幂,那么根据所有数从低到高第xxx位的1/01/01/0同样可以确定为二分图。同时如果BBB中有两个数中222的次幂不同,这两个数就会导致奇环而使得整个图不是二分图。原因很简单,环的长度len=lcm(a,b...

2019-12-07 17:02:20 155

原创 Codeforces 1237E. Balanced Binary Search Trees

链接Balanced Binary Search Trees题解按树的最大深度递增的顺序考虑,最大深度为2的只有n=4n = 4n=4和n=5n = 5n=5两种情况,再来考虑最大深度为3,那么左右子树的深度都必须是2,考虑奇偶性之后右子树的节点数必须是偶数,左子树的节点个数无所谓,这样就得到了此时只有n=9n = 9n=9和n=10n = 10n=10两种情况,数学归纳法即可找出所有情况。...

2019-11-08 19:36:24 151

原创 PKUWC2018 猎人杀

链接猎人杀题解这个题首先需要知道一个结论,题目中的概率等价于已经死掉的猎人继续算在概率里面,每一轮一直开枪直到射死一个之前没死的猎人为止。结论很容易证明。这样一来概率中的分母就不变了,大大简化了问题。之后就是容斥了。设AiA_iAi​表示第iii个人在111之前被杀死,那么ans=∣A2∩A2∩...∩An∣ans = |A_2 \cap A_2 \cap ... \cap A_n|an...

2019-10-06 23:53:42 190

原创 洛谷P4721 分治FFT

链接分治FFT题解这个题一眼看上去就很像f=f∗gf = f*gf=f∗g,当自定义g[0]=0g[0] = 0g[0]=0的时候,题目中给出的fff与这个卷积就只有常数项不同,因此考虑计算这个卷积。由于fff的系数未知,因此不能直接卷积,如果逐项求,每次做一遍卷积那样时间上承受不了。考虑分治,思路和CDQCDQCDQ一样,先递归计算低次项,再计算低次项对高次项的影响,再递归计算高次项。低次...

2019-09-22 17:17:37 137

原创 CF802C Heidi and Library (hard)

链接Heidi and Library题解好题。这个题其实和最长kkk可重区间集很类似,一个关键问题是怎么处理书架的容量,处理方式和区间集很类似,都是采用只增广至多kkk次,每次增广单位流量来达到目的。处理好这个事情费用流的建模其实不难。为了使需求都被解决,把需求拆成两个点,i→i+ni \to i+ni→i+n连费用为−INF-INF−INF的边,使得其必选。每次增广解决一些需求,解决一个...

2019-09-18 01:15:51 183

原创 洛谷P4542 营救皮卡丘

链接营救皮卡丘题解题目的意思就是要用不超过k条可相交路径覆盖整张图,求最小权值和。这里对路径有一个限制,也就是题目中所说的在到达ttt之前必须已经覆盖111~t−1t-1t−1。很明显一个点只能向标号大于它的点连边,并且这条边所经过的点的标号不能超过所到达的点,再考虑到可相交,边权只需一边floydfloydfloyd即可搞定。如何体现kkk条路径的限制是个关键,把每个点拆成入点和出点,每个...

2019-09-17 20:55:57 85

原创 洛谷P4313 文理分科

链接文理分科题解这个题和CF704E一个套路。首先肯定是最小割,关键在于一个集合内的元素只能连向同时连向源或汇时才有附加价值,这时,可以通过新建点的方式体现这种代价。...

2019-09-12 01:02:55 126

原创 洛谷P2046 海拔

链接海拔题解平面图最小割,转成对偶图最短路即可。代码#include <bits/stdc++.h>using namespace std;#define REP(i, n) for (int i = 1; i <= (n); i++)#define sqr(x) ((x) * (x))#define lson l, m, rt << 1#de...

2019-09-11 17:37:54 96

原创 洛谷P4311 士兵占领

链接士兵占领题解其实就一个点,网络流擅长解决"≤\leq≤",但是题目给出的限制是"≥\geq≥",因此考虑最多能拿走几个士兵即可。

2019-09-11 10:56:05 64

原创 CQOI2014 危桥

链接危桥题解这个题的关键就在于把其中一个源汇反过来再做一遍。原理见大佬的博客:SovietPower

2019-09-10 16:12:56 136

原创 HDU5919 Sequence II

链接Sequence II题解好题。第一反应肯定是确定区间有多少个不同的数,以为很好维护,其实不然。思想是看每个数的上一次出现位置在不在区间内。注意到对于一个区间来说,每个数只有第一次出现的位置才对答案有贡献,这样我们对每一个区间左端点,可以只保留每个数第一次出现的位置,然后求区间第KKK大,自然想到主席树,由于要保留第一次出现位置,所以从后往前扫,建主席树即可。代码#include &...

2019-09-02 11:31:43 94

原创 HNOI2016 网络

链接网络题解最暴力的想法就是对每个节点维护一个堆,对于每条路径,向不在这条路径上的所有点的堆中插入这条路径的重要度,这肯定会T,考虑用数据结构进行优化。两点之间的路径可以树剖之后用线段树成段更新,但如果通过打lazylazylazy标记的方法实现成段更新会很麻烦,因为lazylazylazy标记中要记录每一条路径的信息,下传的时候更是要将每一条路径的信息分别下传,无论时间还是空间都无法接受,...

2019-08-27 16:34:39 109

原创 BZOJ1912 巡逻

链接巡逻题解k=1k=1k=1的情况很容易,直接连接直径两端即可,同时这种情况带来思路,一个环的出现可以使得环上的路径只需经过一次,也就是说给环上每条边带来111个单位的收益。当k=2k = 2k=2时,想法依然是让收益尽量大,但此时每条边的收益不同于前一种情况,第一种情况的环上的边的收益变成−1-1−1,其余边仍为111,此时再求一边树的直径就是最大收益。这里仍然用到了贪心思想,也就是分别...

2019-08-17 10:09:50 90

原创 POJ3613 Cow Relays

链接Cow Relays题解首先很容易想到dp,dp[i,j,k]dp[i, j, k]dp[i,j,k]表示从iii到jjj经过kkk条边的最短路,但是很明显会超时,这里使用矩阵加速,定义:Ar[i,j]:从i到j经过r条边的最短路A^r[i, j]:从i到j经过r条边的最短路Ar[i,j]:从i到j经过r条边的最短路那么∀i,j∈[1,n],(Ar+m)[i,j]=min1≤k≤n{...

2019-08-15 22:36:52 123

原创 UESTC1546 Bracket Sequence(线段树区间修改)

链接Bracket Sequence题解    只有一种括号,所以很容易用前缀和判断是否合法,方法就是把左括号看作1,右括号看作-1,这样对于一段区间[l,r][l,r][l,r]来说,定义前缀和S[i]=∑j=0ia[l+i]S[i] = \sum_{j = 0}^{i}a[l + i]S[i]=∑j=0i​a[l+i],只要满足S[r−l+1]=0,S[i]≥0(i=0,1,...r−...

2019-07-30 14:14:11 116

原创 CH4701 天使玩偶

链接天使玩偶题解CDQ分治,首先不看加点操作,也即没有修改只有询问,我们首先把原来的每个询问分成四个小问题,分别询问在(x,y)(x, y)(x,y)的左下,左上,右下,右上的最近距离,四个里面取最小值即可。以左下为例,答案为:min1≤i≤n{(x−xi)+(y−yi)}min_{1 \le i \le n} \{(x - x_i) + (y - y_i)\}min1≤i≤n​{(x−x...

2019-07-26 20:56:26 236

原创 POJ1741 树

链接树题解点分治,思路很直接,递归求解过每棵子树的根节点的路径,长度不超过kkk的有多少条。为了强制使得路径经过根节点,就需要路径的端点不在根节点的同一棵子树上,因此需要记录信息子树中的每个节点对应的根节点的直接儿子节点是哪一个,根节点对应的是它本身,这样可以使得统计的时候不漏掉以根节点做端点的路径。统计路径条数有一些尺取法的思想,将子树内的节点都放到同一个数组里,按照到根节点的距离排序,那...

2019-07-26 14:44:02 172

原创 CH1806 2351 Matrix

链接矩阵题解二维字符串hashhashhash,对行和列分别选取一个basebasebase进行字符串hashhashhash,注意两个basebasebase不能相同,否则AAA与ATA^TAT的hashhashhash值就相等了,通过容斥O(1)O(1)O(1)得到子矩阵的hashhashhash值。这里直接用unsignedunsignedunsigned longlonglong...

2019-07-20 19:38:37 157

原创 NOIP2008提高组 双栈排序

链接https://www.acwing.com/problem/content/description/155/题解非常巧妙的将问题转化成二分图判断。i,ji, ji,j能够被压入同一个栈中的条件是不存在满足如下条件的元素kkk:a[k]&lt;a[i]&lt;a[j], i&lt;j&lt;ka[k] &lt; a[i] &lt; a[...

2019-07-20 17:40:04 200

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除