随笔分类 - 基础算法----构造
摘要:UOJ 283. 直径拆除鸡 题意: [题目传送门][1] 题解: 只能说是好妙的一个构造啊……(开花金字塔这名字真形象……) 考虑删除掉一条长度为$d$的直径之后,最长的直径是$(\lfloor \frac{d}{2} \rfloor 1) 2$。这个还是比较容易证明的,发现由于这个式子中有一个下
阅读全文
摘要:POI2011 移方块 Shift [题目传送门][1] 题意 $Byteasar$给他的儿子$Bytie$买了一盒共$n$块积木,他将这些积木从$1$到$n$编号,并按照一定的顺序摆成一排。$Bytie$要将这些积木按照编号从小到大的顺序重新排列,但他只能做下面两种操作: 操作 a:将最后一个积木
阅读全文
摘要:POI2011 棒棒糖 Lollipop [题目传送门][1] 题意 $Byteasar$在比特镇开了一家糖果店,草莓香草味的棒棒糖是当地孩子们的最爱。这些棒棒糖都是由长度相同的香草味或者草莓味的片段组成的。一整根棒棒糖的价格是每一段棒棒糖的价格之和,每一段香草味的棒棒糖价格为一元,草莓味的棒棒糖价
阅读全文
摘要:[TOC] BZOJ 2563 阿狸和桃子的游戏 [题目传送门1][1] 题意 给出一个图,每个点有点权$v_i$,每条边有边权$c_i$,两个人轮流选点,选择一个点可以获得这个点的点权,一条边的两个点如果都被一个人选了,那么这个人会获得这条边的边权。两者都采取最优的方案,问后手的分数减先手的分数是
阅读全文
摘要:[TOC] BZOJ 2139 road [题目传送门1][1] 题意 很久很久以前,中原地区分成了N个国家,编号为1到N,任意两个国家都可互达。每个国家有一个攻击值$A[i]$和防御值$B[i]$。定义一个人从i国去j国的危险值为:假如$A[i] B[j]$,则危险值为$( A[i]^2 B[j]
阅读全文
摘要:[TOC] codeforces 794D Labelling Cities [题目传送门][1] 题意 给出一个$n$个点$m$条边的图,要求给图中的每一个点赋一个值$x[i]$,使得任意两个点之间有边当且仅当$|x[i] x[j]| using namespace std; typedef lo
阅读全文
摘要:[TOC] BZOJ1787 Meet紧急集合 [题目传送门][1] 题解 写起来很简单,但是想想又有点玄的一道题。刚开始想的是用树剖维护他们的路径什么的,后来发现自己就想错了。。我们如果要达到最优的答案,那么就是要最小化重复的路径,对于树上的任意三个点,我们总共只会有1个或者2个的LCA。如果这三
阅读全文
摘要:[TOC] BZOJ1509 逃学的小孩 [题目传送门][1] 题解 比较简单的一道题目,首先由于要构造一个最坏的情况,所以一定会走$A$到$B$这条路,那么$A$和$B$的地点一定是在树直径的两个端点上的。所以我们找出直径的两个端点之后,处理每个点到两个直径端点的距离$d1[i]$和$d2[i]$
阅读全文
摘要:[TOC] BZOJ2150 部落战争 [题目传送门][1] 题解 对于每个点拆点之后,每个点都向它能够到达的点的入点连边,跑二分图最大匹配,最后所需的军队个数就是总城镇个数减去匹配个数。因为有一对点能够匹配就说明这两个城镇可以由一只军队征服,所以所需军队=总城镇个数 匹配个数。 code incl
阅读全文
摘要:[TOC] BZOJ1497 最大获利 [题目传送门][1] 题解 比较容易想到的一道网络流。从源点向每一个中转站连一条流量为$Pi$的边,从每个中转站向其对应的消费人群连一条流量为$inf$的边,从每个消费人群向汇点连一条流量为$Ci$的边。然后就转化成了最小割的问题了。由于中间消费人群与中转站的
阅读全文
摘要:[TOC] BZOJ3175 攻击装置 [题目传送门][1] 题解 emm...似乎说这个是最大独立集,可能之前并不知道有这个东西。由于攻击装置是攻击日字形的,所以我们可以根据奇偶性构造二分图,跑出二分图的最大匹配之后,用总的点数减去匹配个数就是答案了(因为这所有的匹配中,每一对只能够选择一个)。
阅读全文
摘要:[TOC] BZOJ1059 矩阵游戏 [题目传送门][1] 题解 刚开始理解错题意了,以为除了主对角线上之外都不能有1.后来发现只要主对角线上可以都是1就是合法的了。实际上的题意就是让你判断$n$行与$n$列是否可以都匹配上,这样就是一个比较简单的二分图匹配,如果第$(i,j)$位置上为1,就说明
阅读全文
摘要:[TOC] BZOJ1192 鬼谷子的钱袋 [题目传送门][1] 题解 比较水的题目,只要知道用1、2、4...$2^n$可以组成$[1,2^{n+1})$这个区间里的任意一个数这个结论就行了。 code include using namespace std; typedef long long
阅读全文
摘要:[TOC] BZOJ4240 有趣的家庭菜园 [题目传送门][1] 题解 一个比较好的贪心+树状数组的题目。通过题目我们可以容易地发现我们的目标就是要构造一个数列,使得这个数列是一个单峰数列,并且使得交换的次数最少。实际上交换次数最少就是一个求逆序对的过程,用树状数组就可以简单地解决。而要构造这个单
阅读全文

浙公网安备 33010602011771号