自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

那也行啊

Keyboard not found ... press F1 to continue

  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

转载 最短路径

转载:http://mindlee.net/2011/11/18/shortest-paths-algorithm/假如你有一张地图,地图上给出了每一对相邻城市的距离,从一个地点到另外一个地点,如何找到一条最短的路? 最短路算法要解决的就是这类问题。定义:给定一个有(无)向图,每一条边有一个权值 w,给定一个起始点 S 和终止点 T ,求从 S 出发走到 T 的权值最小路径,即为最短路径。最短

2013-09-28 20:50:48 762

原创 已知中序遍历和后序遍历,求前序遍历

/**已知中序遍历和后序遍历,求前序遍历算法的主要部分是将中序遍历分成左中右三部分将后序遍历分成左右中三部分最后后序建树的时候节点就等于中间的部分左子树由中序遍历的左部分和后序遍历的左部分构建右子树由中序遍历的右部分和后序遍历的右部分构建*/#include #include #include #include using namespace std;struct nod

2013-09-24 21:04:37 1213

原创 hdu 3342 拓扑排序

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3342题意:根据给出的边来判断是不是拓扑序列或者说是否有环出现。#include #include #include #include using namespace std;#define maxn 10005vector g[maxn];int indegree[

2013-09-24 17:00:01 424

原创 hdu1285 拓扑排序

简单的拓扑排序应用采用邻接矩阵:#include #include #include using namespace std;#define maxn 505int map[maxn][maxn];int indegree[maxn], n, m;int main(){ while (cin >> n >> m) { m

2013-09-23 16:14:28 477

原创 拓扑排序 基础

下面文字来自于百度百科:什么是拓扑序列通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序。离散数学中关于偏序和全序的定义:若集合X上的关系是R,且R是自反的、反对称的和传递的,则称R是集合X上的偏序关系。设R是集合X上的偏序(Partial Order),如果

2013-09-23 16:09:04 750

原创 hdu 4717 三分

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4717题意:给出N个点,每个点都给出坐标(x,y)还有每个点的移动方向vx和单位时间移动速度vy,求任意时刻任意两点的最大距离的最小距离,以及发生最小距离的时间。方法:先考虑两个点,它们之间的距离要不是先减后增,就是单调递增,这样就可以三分。代码:#include #include

2013-09-20 18:00:57 398

原创 矩阵算法的基本题型

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1575很水的模板题:#include #include #include using namespace std;#define maxn 101#define MOD 9973struct Mat{ int a[maxn][maxn]; Mat(

2013-09-18 22:09:34 474

转载 矩阵乘法算法

转载一些矩阵乘法的基本操作:#include #include #include using namespace std;#define maxn 101#define MOD 1000000007struct Mat{ int a[maxn][maxn]; Mat() {memset(a, 0, sizeof(a));} Mat(int i)

2013-09-18 21:52:59 456

原创 hdu 4419 线段树 离散化 扫描线

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4419题目大意:给出红绿蓝三种颜色的矩形,这些颜色的矩形重叠在一起组合成其他的颜色(共7种),求各种颜色的面积。方法:前面处理扫描线的操作都是很基本的操作,关键的操作是在往上更新的时候,首先在红绿蓝用1,2,4表示,然后再通过位运算可以算出组合成的其他颜色,更新关键操作是参考网上的神代码,具体看

2013-09-11 21:20:56 569

原创 hdu 1255 面积交

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1255方法:离散化,线段树,扫描线代码:/**以y轴为扫描线然后用x[]记录下所有的x坐标,并对x坐标去重对于每一条扫描线xl, xr都二分找到在数组x[]的下标在用线段树更新的时候每次找到更新可以的区间的时候用pushdown(),更新到底并且用pushup()往上更新*/

2013-09-09 21:37:54 562

原创 poj 1177 / hdu 1828 线段树 离散化 扫描线

题目链接:http://poj.org/problem?id=1177题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1828题目大意:有多个矩形并在一起,求组成的图形的周长。代码:#include #include #include using namespace std;#define maxn 5005struct Li

2013-09-08 17:26:28 396

原创 poj 1151 线段树 离散化 扫描线

题目链接:http://poj.org/problem?id=1151题目大意:在一个平面里有许多矩形,给你每个矩形两对角的坐标,求矩形面积交。参考:http://blog.csdn.net/new_c_yuer/article/details/6013747代码:/**每次得到一个要更新的区间,都单点更新*/#include #include #include #in

2013-09-07 19:54:01 460

原创 poj 2528 线段树 离散化

题目连接:http://poj.org/problem?id=2528题目大意:在一面墙上贴海报,墙很长,后面贴上去的海报要覆盖掉之前贴上去的海报,现在向墙上逐一的贴海报,问到最后墙上可以看见的海报有几种?方法:线段树,离散化代码:#include #include #include #include using namespace std;#define maxn 10

2013-09-05 20:28:22 531

原创 hdu 2191 多重背包

题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2191题目大意:现在你一共有资金n元,市场上有m中大米,每种大米都是袋装的,而且价格不等,购买大米时只能整袋购买。现在问在有限的资金下最多能够购买多少公斤的大米。方法:多重背包,对于每种大米的选择,能够用完全背包就用完全背包进行优化,不能够用完全背包优化就进行二进制优化。代码:#incl

2013-09-04 19:54:21 351

原创 hdu 2642 二维树状数组

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2642二维树状数组的模板题,单点更新,区域求和。代码如下:#include #include #include #define maxn 1005#define lowbit(x) (x&-x)using namespace std;int map[maxn][max

2013-09-02 20:56:35 426

背包问题九讲

acm算法学习资料,对动态规划中的背包问题进行了很详细的讲解,是很不错的学习资料。

2013-09-04

空空如也

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

TA关注的人

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