随笔分类 -  bzoj

摘要:题目:DZY家的后院有一块地,由N行M列的方格组成,格子内种的菜有一定的价值,并且每一条单位长度的格线有一定的费用。DZY喜欢在地里散步。他总是从任意一个格点出发,沿着格线行走直到回到出发点,且在行走途中不允许与已走过的路线有任何相交或触碰(出发点除外)。记这条封闭路线内部的格子总价值为V,路线上的 阅读全文
posted @ 2016-11-16 19:35 konjac蒟蒻 阅读(848) 评论(0) 推荐(0)
摘要:题目:在一些一对一游戏的比赛(如下棋、乒乓球和羽毛球的单打)中,我们经常会遇到A胜过B,B胜过C而C又胜过A的有趣情况,不妨形象的称之为剪刀石头布情况。有的时候,无聊的人们会津津乐道于统计有多少这样的剪刀石头布情况发生,即有多少对无序三元组(A, B, C),满足其中的一个人在比赛中赢了另一个人,另 阅读全文
posted @ 2016-11-16 19:20 konjac蒟蒻 阅读(222) 评论(0) 推荐(0)
摘要:题目:你去找某bm玩,到了门口才发现要打开他家的大门不是一件容易的事…… 他家的大门外有n个站台,用1到n的正整数编号。你需要对每个站台访问一定次数以后大门才能开启。站台之间有m个单向的传送门,通过传送门到达另一个站台不需要花费任何代价。而如果不通过传送门,你就需要乘坐公共汽车,并花费1单位的钱。值 阅读全文
posted @ 2016-11-16 19:16 konjac蒟蒻 阅读(566) 评论(0) 推荐(0)
摘要:题目:有一种图形叫做五角形圈。一个五角形圈的中心有1个由n个顶点和n条边组成的圈。在中心的这个n边圈的每一条边同时也是某一个五角形的一条边,一共有n个不同的五角形。这些五角形只在五角形圈的中心的圈上有公共的顶点。现在给定一个n五角形圈,你的任务就是求出n五角形圈的不同生成树的数目。还记得什么是图的生 阅读全文
posted @ 2016-11-16 18:59 konjac蒟蒻 阅读(327) 评论(0) 推荐(0)
摘要:题意:从编号为 1~N 的音阶中可选任意个数组成一个音乐片段,再集合组成音乐篇章。要求一个音乐篇章中的片段不可重复,都不为空,且出现的音符的次数都是偶数个。问组成 M 个片段的音乐篇章有多少种。答案取模1000000007(质数)。 解法:先将题目模型化:N 个数组成 M 种组合,且要求组合之间互不 阅读全文
posted @ 2016-11-16 08:43 konjac蒟蒻 阅读(595) 评论(0) 推荐(0)
摘要:题意:小Z有N只袜子,有不同的颜色。他有M个提问,问从编号为[L,R]的袜子中随机选一双同色的袜子的概率,用最简分数表示。 解法:经典的莫队算法——无修改、不强制在线(可离线)、状态转移可以一步完成。 步骤如下: 1.对询问按第一关键字的平方根 sqrt(x) 从小到大排序进行分组,再是各组中按第二 阅读全文
posted @ 2016-11-15 11:33 konjac蒟蒻 阅读(206) 评论(0) 推荐(0)
摘要:题意:给出n个区间[a,b),有2个记录器,每个记录器中存放的区间不能重叠。求2个记录器中最多可放多少个区间。 解法:贪心。只有1个记录器的做法详见——关于贪心算法的经典问题(算法效率 or 动态规划)。而对于2个,就是在1个的基础上(按 bi 排序,选第一个与之前没有相交的区间)维护2个值,注意要 阅读全文
posted @ 2016-11-08 21:06 konjac蒟蒻 阅读(488) 评论(0) 推荐(0)
摘要:题意:平面上给出N个点,知道M个关于点X在点Y的正东/西/南/北方向的距离。问在刚给出一定关系之后其中2点的曼哈顿距离((x1,y1)与(x2,y2):l x1-x2 l+l y1-y2 l),未知则输出-1。 解法:带权并查集。sx[x]表示x与其根结点的横坐标的差,sy[x]表示x与其根结点的纵 阅读全文
posted @ 2016-11-04 16:58 konjac蒟蒻 阅读(246) 评论(0) 推荐(0)
摘要:题意:一个账本记录了N个月以来的收入情况,现在有一个侦探员不同时间偷看到M段时间内的总收入,问这个账本是否为假账。 解法:带权并查集+前缀和。 判断账本真假是通过之前可算到的答案与当前读入的值是否相同来完成。那么就是只有知道新读入的区间2端的(在相同区域内的!!)前缀和才可以判断,也就是这2个端点之 阅读全文
posted @ 2016-11-04 08:59 konjac蒟蒻 阅读(546) 评论(0) 推荐(0)
摘要:题意:有M只猴子,他们的最大跳跃距离为Ai。树林中有N棵树露出了水面,给出了它们的坐标。问有多少只猴子能在这个地区露出水面的所有树冠上觅食。 解法:由于要尽量多的猴子能到达所有树冠,便用Kruskal求一次MST最小生成树,也就得到了最大边最小的最小瓶颈生成树。在用这个最大边权计算合法的猴子树。 P 阅读全文
posted @ 2016-11-03 14:20 konjac蒟蒻 阅读(555) 评论(0) 推荐(0)
摘要:题意:有M个家族的蚂蚁,各Ni只(互相相同)。问选出 l~r 只的不同方案数。 解法:很基础的一种DP,不要被“排列组合”所迷惑了啊~我之前接触过这个类型,可惜又忘了,一定要记住!这是一种类型的DP——M种N个进行DP,定义f[i][j]表示前 i 种中(这题是“家族”)选了 j 个(“只”蚂蚁)的 阅读全文
posted @ 2016-10-27 11:56 konjac蒟蒻 阅读(685) 评论(2) 推荐(0)
摘要:题意:定义一棵树的所有非叶节点都恰好有n个儿子为严格n元树。问深度为d的严格n元树数目。 解法:f[i]表示深度为<=i的严格n元树数目。f[i]-f[i-1]表示深度为i的严格n元树数目。f[i]=f[i-1]^n+1。d层的严格n元树可分解为1个根节点和n棵d-1层的严格n元树。利用乘法原理,再 阅读全文
posted @ 2016-10-26 09:01 konjac蒟蒻 阅读(576) 评论(0) 推荐(1)
摘要:题意:一共有N只牡牛(公牛)和牝牛(母牛),每2只牡牛间至少要有K只牝牛才不会斗殴。问无斗殴发生的方案数。 解法:f[i][j]表示一共i只牛,最后一只是j(0为牝牛,1为牡牛)的方案数。f[i][0]=f[i-1][1]+f[i-1][0]; f[i][1]=f[i-k-1][1]+f[i-k-1 阅读全文
posted @ 2016-10-17 14:03 konjac蒟蒻 阅读(323) 评论(0) 推荐(0)
摘要:题意:给一个n个点的图和一个n个点的树,求图和树上的点一一对应的方案数。(N<=17) 解法:1.在树的结构上进行tree DP,f[i][j]表示树上点 i 对应图上点 j 时,这个点所在子树的方案数。O(n^3)。 2.我们可以发现如果按这个定义进行DP,“一 一对应”的关系挺难保证。若枚举出全 阅读全文
posted @ 2016-09-16 14:41 konjac蒟蒻 阅读(534) 评论(0) 推荐(0)
摘要:这题是在01背包问题的基础上,扩充了重量,需要用时间换空间。 思路: 1.仔细看题,注意到重量wi为a*2^b(a<=10,b<=30),很容易想到要按 b 分开做背包的DP。接下来的重点就是怎么使DP从b-1继承到b。 2.再仔细看题,发现只有一次询问,那么就可以在这个W上做文章——依W的大小进行 阅读全文
posted @ 2016-09-12 22:22 konjac蒟蒻 阅读(451) 评论(0) 推荐(0)
摘要:n个数,求一次逆序对。接着有m次修改操作,把每次输入的位置p的数之后<=它的数取出来,从小到大排序后再放回空位里,求逆序对。(N,M<=500,000 , Ai<=10^9)思路:1.往后修改就存后缀,而不是一般的前缀。存数 i 之后<=它的数的个数为s[i],用于后续求逆序对。2.修改时选出的数排 阅读全文
posted @ 2016-09-12 13:35 konjac蒟蒻 阅读(521) 评论(0) 推荐(0)