摘要: 写在前面的话 加入实验室已经有大半年的时间了,科研上一直没有取得什么重大突破。除去自身的实力问题之外,最大的问题恐怕就是对于自己或导师提出的一个问题往往不知道从何入手去研究,如何快速的了解相关工作的现状。相信这个导致我进步缓慢而且不断走弯路的主要原因。 写下这篇博客,出发点是为了能够记录自己在学习A 阅读全文
posted @ 2016-04-07 15:57 张小豪 阅读(2775) 评论(3) 推荐(1) 编辑
摘要: 在写这篇博客之前首先申明一下,这个线段树的名字是我的好队友 shu_mj 取的。由于实在很好用,对于新手容易上手所以写一篇博客造福老百姓。然后说明一下这仅仅是一篇关于线段树入门的文章。单点更新:单点更新不需要标记整个线段树只需要自底向上的维护值(最小值,最大值,和等)就行了。实现难度较低,新手也能很... 阅读全文
posted @ 2014-07-17 19:09 张小豪 阅读(1864) 评论(0) 推荐(1) 编辑
摘要: 最小生成树应该是我们相当熟悉的东西了。对于一个连通的无向图G,G中权值最小的生成树称为最小生成树。这是最小生成树的定义,在这片文章里我会把最近学到的关于最小生成树及其相关的算法做一个总结和分享吧, 并会把我整理的模版贴出来。对于最基本的的最小生成树问题我们可以使用kruskal算法和prime算法(前者适用于稀疏图)在O(mlogm)与O(nlogn+m)时间内解决。关于这两种最基本的算法我就不在这里多说了。一、最小瓶颈路问题在最小生成树的实际应用中我们常常会遇到这一类问题,给你一张无向带权连通图和两个节点u,v让你求u,v之间的一条路径使得u->v路径上最大的边权最小值。这一类问题我们 阅读全文
posted @ 2014-02-10 21:36 张小豪 阅读(2754) 评论(1) 推荐(0) 编辑
摘要: 从寒假一开始,到现在也学习了两个多星期的图论中dfs的相关算法,也做了一些题目。在这里先把强连通分支及其应用做一个第一阶段总结,巩固一下也便于开始下一步学习。在这里我也会列出我总结的一套模版。首先我们要明确下面的这些算法都是针对有向图而言的,先笼统的说一下强连通分支是什么?其实就是有向图中的一部分,在这部分里任意两个节点都相互可达。虽然表述可能不规范,但是应该比较形象吧。一、强连通分支(scc)接下来我们先来学习一下如何在一张给定的图中求出强连通分支,我们需要介绍两个算法:(1)Kosaraju算法这个算法的思想很简单,也比较好写。前提是我们已经熟练掌握了dfs的写法及思想。下面是算法流程:首 阅读全文
posted @ 2014-02-02 20:54 张小豪 阅读(3474) 评论(1) 推荐(0) 编辑
摘要: 最近花了大约一个月左右的时间集中刷了一些图论的题目。虽然收获了许多但是还是付出了很多作业没有做的代价0.0。在这里先把自己所做的关于最短路的基础算法来做一个总结,至少把学到的东西记录下来。先说明一下在这里我们暂且认为n为图中顶点个数,m为图中边的个数,INF为极大值(可以是题目计算过程中不会的得到的一个大数字)。然后说一下最近学到了什么吧。最初学习的是dij--O(n^2)的算法。这个在以前数据结构的时候就已经学习过了现在加强了一下,熟练掌握了算法思想然后会裸敲。接着当然就是dij--O(mlogn)的算法。了解算法思想并且明白了是如何优化的,然后会裸敲。接着是floyd算法这个最简单了只有几 阅读全文
posted @ 2013-12-29 01:04 张小豪 阅读(2282) 评论(0) 推荐(2) 编辑
摘要: 还记得之前,发过一篇阶段性总结与未来规划。。结果由于最近rp爆发(保研成功+进wf)后者显然靠bin神,前者也是运气。因此,放松了一段时间。然后就开始刷usaco了,原因是不用花时间找解题报告在NOCOW上全部都有,很是方便。所以只需单独开一片随笔把每天做题总结一下。Chapter1-Getting... 阅读全文
posted @ 2014-11-27 23:48 张小豪 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 题意:在一张图中给出q个加边操作,问你每次操作之后图中割边的个数。点数1e5询问1000思路:这道题的做法是先对图进行缩点,然后变成一颗树,每次添加新边若是边的两个端点属于不同的分支则一定会形成一个环,这时暴力lca标记所有换上的边有割边变为不是割边。每次统计就可以了。理论上说,每次给V字形的图复杂... 阅读全文
posted @ 2014-09-01 18:13 张小豪 阅读(636) 评论(0) 推荐(0) 编辑
摘要: 博客已经有一段时间没有更新了,这段时间做了不少的专题。由于题目的质量不是很高多以没有继续以往每道题都上博客的习惯。现在写一篇阶段性总结,来总结一下暑假再规划一下区域赛之前的冲刺训练。 作为最终唯一一位大四的选手,相信我在区域赛之前的准备时间是最丰富的。由于没有课(一个星期只有6节),也没有找实... 阅读全文
posted @ 2014-09-01 14:14 张小豪 阅读(567) 评论(0) 推荐(0) 编辑
摘要: 题意:求字串中可以随机排列形成回文串的个数。思路:枚举起点,在枚举终点的同时更新标记数组记录每个字母分别出现几次在统计即可。代码如下: 1 /************************************************** 2 * Author : xiaohao Z ... 阅读全文
posted @ 2014-07-05 23:27 张小豪 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 题意:有一张无向图,要求你只能改变变得权值,且边的权值只为1-m每个数只能出现一次。要求最短路树即为最小生成树。思路:bfs顺序递增的给买一条边赋值,最后再把不在树上的边赋值即为答案。代码如下: 1 /*************************************************... 阅读全文
posted @ 2014-07-05 23:25 张小豪 阅读(439) 评论(0) 推荐(0) 编辑
摘要: 题意:给一个向量输出任意与它垂直的向量 ,不能出现负数。思路:直接输出(d, a) (b, c)代码如下: 1 /************************************************** 2 * Author : xiaohao Z 3 * Blog ... 阅读全文
posted @ 2014-07-05 23:21 张小豪 阅读(231) 评论(0) 推荐(0) 编辑
摘要: a,b,c在c最大的情况下选a*b*c最大的代码如下: 1 /************************************************** 2 * Author : xiaohao Z 3 * Blog : http://www.cnblogs.com/s... 阅读全文
posted @ 2014-07-05 23:19 张小豪 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 题意:有一堆人之间有借钱关系,给你一个关系矩阵Aij表示i欠j多少钱。若是有一个人他的总资产是负的,他可以从矩阵中去除和他一行一列的数据都会去除。问可以被最后留下来的那个人可能是那些?思路:状态压缩dp表示当前状态可不可以达到,每次状态转移都两重循环判断第j个人能不能被去除。若可以标记,一直递推下去... 阅读全文
posted @ 2014-07-04 09:05 张小豪 阅读(488) 评论(0) 推荐(0) 编辑
摘要: A:HDU 1072(易) 1 /************************************************** 2 * Author : xiaohao Z 3 * Blog : http://www.cnblogs.com/shu-xiaohao/ 4 ... 阅读全文
posted @ 2014-07-03 09:53 张小豪 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 题意:一些具有拓扑序的节点需要染色,这些节点一共分为两类。问你按照给出的拓扑顺序染色完结点最少需要多少次切换。思路:我们按照拓扑排序的做法,建立两个栈分别存放两种不同种类的节点,每次把一个栈中的所有节点都处理完了才处理另一个,这样切换次数即为最终答案。代码如下: 1 /**************... 阅读全文
posted @ 2014-07-01 14:54 张小豪 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 符合三者之一的则不满足规定,求不满足规定的个数。直接模拟。1.被同一个人审查多次2.被和自己同一组织的审查3.被审查次数不等于k代码如下: 1 /************************************************** 2 * Author : xiaohao ... 阅读全文
posted @ 2014-06-28 23:47 张小豪 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 题意:问小于n的数的乘积能拼成的最大平方数是多少?思路:给n!做质数分解在除去指数为奇数的那些质数,由于题目中需要模运算所以不能直接除,必须乘上摸逆。代码如下: 1 /************************************************** 2 * Author ... 阅读全文
posted @ 2014-06-28 23:44 张小豪 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 题意:给一个表达式当中有一些变量,然后告诉你一些数字你可以任意排列,问能不能求出要求的结果。思路:由于变量数目较小所以直接全排列枚举即可,然后用栈处理表达式。代码如下: 1 /************************************************** 2 * Author... 阅读全文
posted @ 2014-06-28 23:41 张小豪 阅读(286) 评论(0) 推荐(0) 编辑