自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Chester King

蒟蒻成长中……

  • 博客(25)
  • 收藏
  • 关注

原创 【hihocoder】1014 Trie树

题目传送门今天学一发Trie树,为了接下来的AC自动机做准备。Trie树好像还是挺重要的,经常有题目的优化需要用到Trie树,比如说一些异或的题目。其实Trie树还是挺好理解的,就是把一个字符串放到一棵树上,每一个叶节到根节点的路径都表示一个字符串

2017-07-31 21:39:51 200

原创 【BZOJ】4554 [Tjoi2016&Heoi2016]游戏 二分图

题目传送门快热死啦,突然觉得空调是那么伟大的发明,没有空调我快活不下去啦——在炎热的下午,顶着连绵不绝的睡意,要想写对一道题真的不容易啊。回到题目,这题的正解是二分图。首先我们考虑没有硬石头的情况,我们可以发现对于每一个可以放炸弹的地方,我们可以把该节点的横坐标和纵坐标连边,然后题目就转化成了行与列的二分图最大匹配。然后我们考虑有硬石头的情况,可以发现每一块硬石头把原本连在一起的行

2017-07-26 21:22:12 242

原创 【BZOJ】1598 [Usaco2008 Mar]牛跑步 k短路(最短路径+A*)

题目传送门补一发k短路(虽然以前会的,但是现在好像都忘光了……在学习的过程中还是要多复习啊)。恩?这题不就是k短路的模板题吗?题意已经很明确了,就是让我们求前k短路的长度,若不存在则输出-1。然后就是喜闻乐见的套模板……然后就是打板子的时候了。不过OLE也是比较少见的,今天竟然被我弄出来了一个:已经找完k短路了,但是忘记退出a*函数了……打板子也不能放松啊,基础才是最重要的。(

2017-07-25 20:25:44 307

原创 图论基础整理

写在最前面:这是一篇很水很水的水博客,如果不无聊的同学就不要点进来了哈。我只是想记录一下今天复习的基础。1.POJ1125、POJ3615这两题都是非常水的floyd。前一题是求图上一节点,使得它到所有点的最大距离最小。显然只要floyd求所有点之间的最短路,然后枚举所有节点作为答案是否成立即可。后一题是更水的多源最短路,初学floyd的同学都能轻松水过。2.HDU2544

2017-07-24 15:36:54 625 3

原创 【BZOJ】3343 教主的魔法 分块

题目传送门分块什么的最好了~(至少简单易懂,代码还比较好写)这题就当是我学习了分块的flag吧。其实分块就是把原来n个元素分成sqrt(n)块,每块有sqrt(n)个元素。对于一段连续的区间修改,我们可以把这个区间分成若干个完整的块和两端剩下的元素。对于完整的块,我们可以用和线段树一样的思想——延迟标记来记录当前块内所有元素的共同修改量;对于两端剩下的元素,我们可以暴力修改

2017-07-21 20:27:58 250

原创 【BZOJ】1143 [CTSC2008]祭祀river 二分图

题目传送门这题的题意就是给出一张有向图,求这张图的最大独立集。考虑最大独立集,我们想到了二分图,最大独立集=点数-最大匹配数。然后这题就非常简单了,随便套个匈牙利切掉就行了。附:关于一些二分图问题的解题思路:最小点覆盖(每条边至少一个顶点在集合里)=最大匹配。最小边覆盖(每个点至少连一条边)=总点数-最大匹配。最大独立集(集合内的点互不相连)=点数-最大匹配。

2017-07-20 20:26:25 203

原创 【洛谷】1533 可怜的狗狗 平衡树

题目传送门这题嘛,一拿到手,我第一反应是线段树套平衡树……然后就被ZH大佬D了:“这题不是排个序加平衡树就好了吗?”QAQ,大佬就是大佬,一针见血的解决了题目。然后JYZ来问:“这一定是一道很难的题目吧?”“不会啊,一道傻逼模板题罢了。”ZH大佬淡淡的说。(JYZ大佬只是在装弱罢了,他太强了,不过一个大佬%比他弱的人是要降RP的)这题的题目中明确指出:每个区间不互相包含。

2017-07-12 10:51:51 299

原创 【BZOJ】3110 [Zjoi2013]K大数查询 整体二分+树状数组 || 树套树

题目传送门让我缓缓……写了整整三天,终于A掉了……这题,真的恶心啊……这题最大的问题就是细节的问题,在码代码的时候记得一定要保持自己的状态,不能有一点的松懈,否则就像我一样……WA了10+发,TLE了三四发,心累啊……这题还是整体二分,对于那些写树套树的大佬我只能表示%%%了。因为题目给出的条件是abs(c)我们把修改和询问一起整体二分,取操作区间的一半,对于左半边的修改操

2017-07-12 07:25:14 619

原创 【CODE[VS]】1082 线段树练习 3 树状数组

题目传送门标题只是吸引你点进来的,这并不是一篇水博客,下面是有好东西的。曾经我们以为树状数组虽然常数比较小,代码简洁明了,非常好掌握,但可惜的是没有办法实现区间查询而放弃了树状数组去学线段树。我们并不能否认线段树的优秀,但是我们也不能否认树状数组的强大——树状数组是可以实现区间查询的!首先我们都了解树状数组的区间修改吧,其实就是利用了前缀和的性质罢了。(也就是差分)然后我们

2017-07-11 11:11:34 229

原创 【BZOJ】1040 [ZJOI2008]骑士 树形DP

题目传送门好难啊,我太菜了,连题解都看不懂啊……orz教主JN,把一道如此难题讲得如此精简,JN是最强的!(这是JN邪教的信条!)翻开题解,都是一群大佬在刷什么基环外向树,吓得我抱起了抱着抱着抱着我的我的我的我。(这TMD什么玩意儿?!)这道题给出的是一张n个节点、n条边的有向图。但只要稍微脑补一下,其实是无向图。题目并没有说整张图是联通的,所以这是一片基环外向树森林。对于普通

2017-07-11 10:42:21 270

原创 【BZOJ】1131 [POI2008]Sta 递推

题目传送门这题还是挺水的,还是YF哥哥最强了。(听说最近YF哥哥在一次模拟赛中虐场了,不愧是一代神犇)其实我觉得YF哥哥有一点说错了,这题好像并不属于DP的范围,只是一个递推罢了。(YF哥哥不喜勿喷)首先我们可以随便选一个节点作为树根,预处理出所有节点到第i号节点的距离和以当前节点为根的子树的大小。然后我们取节点i和j,假设以第i号节点为根,j是i的一个儿子,现在我们要考虑以j号节

2017-07-11 10:22:37 310 2

原创 【洛谷】1351 [Noip2014] 联合权值 枚举

题目传送门日常水一水,挑一道Noip的水题来练练手。这题的题意是求一棵树上所有的由两条边相连的点对的点权积的和,还有点权积的最大值。我们可以单独挑出一个点i,假设有4个点v1,v2,v3,v4和它直接相连,那么第i号节点对点权积和的贡献S可以表示成:S=W(v1)*W(v2)+W(v1)*W(v3)+W(v1)*W(v4)+W(v2)*W(v3)+W(v2)*W(v4)+W(v3)

2017-07-11 10:04:29 293

原创 【BZOJ】2527 [Poi2011]Meteors 整体二分+树状数组

题目传送门这题的整体二分还是挺好想到的,代码也挺好写的。(比BZOJ3110好写多……)取当期的陨石波数的一半加入树状数组中,判断当前每个国家拥有的陨石数是否达到需求量,若达到则放到左区间中,也就是减小陨石数,反之则放到右区间,增加陨石数。orzZH大佬,当讲课人在上面放出了这道题时,ZH大佬瞟了一眼,哼了一声:“这题不是水题吗?还需要讲?”ZH大佬太强啦QWQ,%%%%%,献上我

2017-07-11 09:43:41 387

原创 划水

今天CSDN是怎么了?为什么原来我一直用的网页编辑器爆炸了?搞得我都写不了博客了,只能划一波水,等待CSDN的恢复。 本来我还想写一下日记的,算了,只能写在这里,然后等CSDN恢复了以后Copy到日记里了。 7.7 连续的OI训练果然很累,我感觉这一个礼拜下来比以前上文化课的时候要累好几倍。最主要的是我还听不懂…… 周围都是大佬,只有我最菜了,天天都被各位大佬虐。 本来今天早上是一次模拟赛

2017-07-07 21:25:01 577 1

原创 【BZOJ】3687 简单题 DP+bitset

题目传送门前几天的考试考到了bitset,于是我就去学了一发。大佬传送门,这位大佬已经讲的很清楚了,我就不再赘述bitset的功能和用法了。其实说白了,bitset就是一个可以位运算的bool数组罢了。回到这题,我们可以很容易想到的是DP,定义f[i[表示当前子集的算术和为i的子集构成方案数。状态转移方程也非常好想,f[j]+=f[j-a[i]]然后就是统计答案,若f[i]

2017-07-06 22:38:11 308 2

原创 【BZOJ】1112 [POI2008]砖块Klo 平衡树

题目传送门今天一晚上就做了一道题,好颓废啊……这题其实还挺水的,只不过本蒟蒻一直都不太想的进去,所以一直WA,一直懵逼。其实这题的题意是在n个数中连续取k个,把这k个数都改成一个相同的数m,使得Σabs(a[i]-m)最小。很显然,当m为当前k个数的中位数时,当前k个数的改动最小。至于为什么,我也不知道……然后我们就可以把这题转化为一个滑动窗口的题目,总共有n-k+1个窗口,求

2017-07-04 21:27:39 317 4

原创 【BZOJ】2431 [HAOI2009]逆序对数列 递推

题目传送门不知道今天是怎么了,可能是空调吹多了吧,一直不在状态,连递推题我都做不来了……(扎Zn了老Fe……)然而,不管环境如何恶劣,我们仍要努力学习,为了自己的明天而奋斗。(说的好像跟真的一样)其实这题就是一个递推,现在我们考虑第i个数,定义f[i][j]表示序列里有i个数,逆序对的组数为j的方案数。因为第i个数的权值就是i,则不管第i个数插到序列里的哪个位置,都会和在它后面的数

2017-07-03 15:05:28 419

原创 【BZOJ】1045 [HAOI2008] 糖果传递 && 3293 [Cqoi2011]分金币 贪心

这题是有爱的双倍经验时间,一个程序刷两题真好。(偷笑)但是,手贱交错题目就不好了……(今天怎么这么背?)这题其实就是一个结论题,引用一下一位大佬的部分博客:(大佬传送门)

2017-07-03 09:36:18 289

原创 【BZOJ】1003 [ZJOI2006]物流运输 最短路径+DP

题目传送门复习一下之前所学,回忆一下一年前还身为普及组的菜鸡,被省选题干趴下的故事。去他妈的张又又!这道题的解题思路是非常神奇的,需要一定的脑洞。定义g[i][j]表示从第i天到第j天都不换路线的最小代价,显然我们可以用最短路径算法处理出g数组。然后就是DP了。定义f[i]表示从第1天到第i天的最小代价,显然这可以用O(n^2)的DP来做,状态转移方程也非常好想,f[i]=min(f[

2017-07-03 08:49:38 380

原创 【BZOJ】1211 [HNOI2004]树的计数 prufer编码+组合数学+高精度

题目传送门今天是一个%大佬的好日子,感觉大佬遍地走,只有我最弱……这题是一道非常难的题目,虽然是“【BZOJ】1005 [HNOI2008] 明明的烦恼”的简化版,但是仍然是一道非常难的数学题。(至少我是这么认为的)首先,在做这题之前,我们需要了解prufer编码。大漩涡传送门,个人认为百度百科已经讲的很清楚了,就不在这里再做赘述了。然后我们就要考虑如何把prufer编码转化成组合

2017-07-02 22:09:45 329

原创 【BZOJ】1098 [POI2007]办公楼biu 链表+BFS

题目传送门orzLYF大佬,太强了,做的题目总是那么的有思想,不愧是一代神犇。我突然发现我的代码跑的还是挺快的,这题在BZOJ上拿了rk14。画风突变——但是那个第一是什么鬼?!这TMD有毒吧?!(忍不住吐槽了一下BZOJ,这不是瞎搞吗?不愧是“爆炸OJ”……)好了,我们该讲题目了。(正经脸)这题的n的范围是100000,O(n^2)的算法就直接pass了,

2017-07-02 09:43:20 315

原创 【BZOJ】1016 [JSOI2008]最小生成树计数 最小生成树+DFS

题目传送门我看这道题不爽很久了,但是因为博主过于蒟蒻,一直都没能有什么特别的想法,就一直留到了现在。首先根据题意,我们应该对这张无向图做一遍最小生成树,判断这张图是否能生成一棵最小生成树,而不是一片森林。这题选用的最小生成树算法是Kruskal,在做Kruskal的同时我们应该把所有边权相同的边归为一类,并统计在最小生成树中该种边权需要几条,为之后的DFS和乘法原理做准备。之后就是

2017-07-02 08:37:13 381

原创 【BZOJ】1050 [HAOI2006]旅行comf 并查集

题目传送门学过的东西就应该及时巩固,否则和没学没有什么区别——我TMD把自己半年前做过的题目都忘了……刚一拿到这道题,我YY了很久,最短路?BFS?还是树结构?YY不出来,题解搜起来。然后我就搜到了codevs1001,舒适的路线,然后发现这题我TMD是做过的?!看了自己半年前的代码,发现是并查集……懵逼中……好吧,因为m的范围是5000,n^2能勉强接受,于是可以对所有边按权

2017-07-01 15:29:46 338

原创 【BZOJ】 1610 [Usaco2008 Feb]Line连线游戏 计算几何

题目传送门日常水一题,因为n的范围只有200,所以可以暴力枚举两个点,把它们所形成的直线记录下来,去重,直线的条数就是答案。附上AC代码:#include #include #include #include using namespace std;struct note{ int x,y;}a[210];int n,len,ans;vector c;int

2017-07-01 14:31:17 271

原创 【BZOJ】4800 [Ceoi2015]Ice Hockey World Championship 折半查找

题目传送门上次省选就有大佬提过折半查找,但是因为我过于蒟蒻,所以一直都没有去学习这种算法。今天突发奇想,开了一发脑洞,学习一下这种算法。这题的折半查找思想是非常好的,可以优化许多题目,可以把时间复杂度硬生生降一半。(好强的算法。)折半查找,就是把数据分成两半,分别对它们进行操作,然后考虑这两半数据间的联系。(这TMD不是分治吗?)对于这题来说,就是把物品分成两半,然后分别求可行

2017-07-01 14:04:25 301

空空如也

空空如也

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

TA关注的人

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