自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 旋转卡壳求凸包间的最短距离 POJ 3608

#include #include #include #include #include using namespace std;#define min(a, b) ((a) < (b) ? (a): (b))#define EPS 1e-8const int MAXN = 10010;struct Point{ double x, y; Point(){}

2013-10-22 10:48:28 805

原创 状态压缩DP POJ 2411 Mondriaan's Dream

【题目链接】http://poj.org/problem?id=2411【题目大意】求用1*2的矩形格子填满n*m的格子的方案数 ,1*2的格子可以横着放也可以竖着放【解题思路】用11表示格子横着放, 01表示格子竖着放(0在该行,1在下一行)。这样按行dp只需要考虑两件事儿,当前行&上一行,是不是全为1,不是说明竖着有空(不可能出现竖着的00),另一个要检查当前行里有没有横放的,但为奇数

2013-10-19 23:46:59 766

原创 状态压缩DP POJ 1185 炮兵阵地

【题目链接】http://poj.org/problem?id=1185【题目大意】在平原(P)上可以布置一支炮兵部队,而在山地(H)上不能够部署炮兵部队。而且每两个炮兵之间的间隔(横纵)要大于等于 2,求最多能够摆放多少的炮兵部队。【解题思路】经典状态压缩DP。每行炮兵的状态 i,只与i-1,和i-2行状态有关。若用0表示此处不能放,1表示能放。则根据题意可知:1、有些地

2013-10-19 17:08:50 905

原创 hdu 3685 Rotational Painting

模板:点到线段上的最近点  线段交点  graham法求凸包  求凸多边形的重心 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3685题目大意:一个多边形放在桌面上,求有几种放的方式能够使多边形不倒。解题思路:任何一个放置的方式,肯定由两个点连成的一条边支撑的,分析可知起作用的点是组成该多边形的凸包上的点。若

2013-10-18 18:24:51 594

原创 求凸多边形的重心 例:hdu 1115 Lifting the Stone

1. 1 累加和求重心设平面上有N 个离散数据点( xi , yi ) ( i = 1, 2, ., n) , 其多边形重心G( . x1, . y1) 为:    这是求多边形最简单直观的方法。可以直接利用离散数据点的x, y坐标就能求图形重心。但是缺陷在于没有对离散数据点所围图形做任何处理和分析,精度不够。1. 2 算法一:在讲该算法时,先要明白下面几个

2013-10-17 08:57:29 1355

原创 hdu 3687 National Day Parade

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3682题目大意: 有一个n*m的格子(n水题,暴力解决~~贴代码:#include#include #include #include #include using namespace std;#define inf 0x3f3f3f3fstruct n

2013-10-16 19:15:58 3477

原创 STL之Vector用法

vector 是一个类模板(class template)。使用模板可以编写一个类定义或函数定义,而用于多个不同的数据类型。因此,我们可以定义保存 string 对象的 vector,或保存 int 值的 vector,又或是保存自定义的类类型对象(如Sales_items 对象)的 vector。vector 不是一种数据类型,而只是一个类模板,可用来定义任意多种数据类型。vector 类型的每

2013-10-16 18:36:15 784

原创 STL algorithm 之 unique 函数的用法

unique的内部实现等价于:template ForwardIterator unique ( ForwardIterator first, ForwardIterator last ){ ForwardIterator result=first; while (++first != last) { if (!(*result == *first)) //

2013-10-16 18:27:20 1264

原创 hdu 3682 To Be an Dream Architect

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3682题目大意:给一个n*n*n的立方体,由1*1*1的小格子组成,起始坐标为(1,1,1),然后给出m条直线,直线经过的地方格子都会被削掉,一个格子只能被削掉一次,求m条直线能削掉多少个格子。直线给出的方式形如:Y=1,Z=3 与坐标面平行,且每条直线必经过立方体。解题

2013-10-16 18:16:10 995

原创 POJ 3254 Corn Fields

题目大意:农夫约翰有一个M*N的矩形牧场,想在牧场里面种植一些植物,但是这些植物不能够相邻,而且有些地是不能种植的,求共有多少种种植方式。解题思路:把每一行的状态用二进制的数表示,1表示在该处种植植物,反之,用0表示。根据题意可知:两个相邻的行或者列不能同时为1,且不能种植植物的地方用0表示。用dp[state][i]表示状态为state时,到第i行符合条件的方案数则状态转移方程为

2013-10-09 22:58:46 613

原创 编译器手动开栈

鉴于HDU用的是windows服务器,所以stack大小及其坑爹,稍微深一点的递归栈就会stack overflow。 通常的规避方法是用stack或者手写stack模拟栈的递归过程 用手工扩展栈。微软的编译器(C++)#pragma comment(linker, "/STACK:102400000,102400000")G++

2013-10-09 18:15:29 3130

原创 概率DP总结

大神博客 :http://www.cnblogs.com/kuangbin/archive/2012/10/02/2710606.html总结的很棒!

2013-10-08 17:55:26 867

原创 ZOJ 3640 Help Me Escape

题目大意:一个魔鬼被上帝关在一个洞穴里,洞穴有n条路可以出去,第i条路的困难程度为ci。魔鬼若想从第i条路走出去的条件是魔鬼当前的战斗力f大于等于ci ,且魔鬼用ti天走出去的,ti = (1+ sqrt(5))/ 2 * c[i] * c[i]。如果f 解题思路:简单的概率dp,用记忆化搜索实现。比较容易理解~~代码实现:#include #include #

2013-10-08 12:55:51 757

原创 hdu 3853 LOOPS

题目大意:给一个R * C的格子,每个格子(i,j)到达(i,j)、(i,j+1)、(i+1,j)的概率分别为p1,p2,p3(p1+p2 +p3 = 1),每走一个格子需要花费的魔力为2,求从(1,1)走到(R,C)所需要魔力的期望。解题思路:果然是个大水题啊~~  很容易退出状态转移方程,不过有个小trick,就是当格子(i,j)的p1=1,即格子只能留在当前的格子处时,dp[i]

2013-10-08 10:31:10 784

原创 POJ 3071 Football

题目大意:有2^n个足球队,编号依次为1,2,3……2^n,按照递增的顺序每两个相邻的队伍之间进行比赛,赢的队伍进入下一轮,然后再按照同样的规则进行比赛,共进行n轮比赛,最后剩下的一个队伍即为冠军,求最可能成为冠军的队伍。输入为2^n行2^n列,第i 行第 j 列的值p[i][j] 表示第i个队伍打败第j个队伍的概率。解题思路:据大神说,这是个简单的dp题,于是我就一直推啊推,历经两个

2013-10-07 11:03:04 697

原创 hdu 4336 Card Collector

题目大意:一种零食里共有n种卡片,每一袋可能有一张,也可能没有,第i张出现的概率为p[i],求集齐n种卡片需要零食袋数的期望。解题思路:状态压缩dp。用 i 的二进制中1的数位 表示还没有收集到的卡片,0表示已收集到的,那么每次购买的零食有三种情况:1、里面有卡片且为没有收集到的;2、里面有卡片且已经收集到了;3、里面没有卡片。 用dp[i]表示当前收集到的卡片为状态 i 时,到集

2013-10-06 21:10:21 635

原创 hdu 4035 Maze

转自:http://www.cnblogs.com/kuangbin/archive/2012/10/03/2711108.html 题目大意:    有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树,    从结点1出发,开始走,在每个结点i都有3种可能:        1.被杀死,回到结点1处(概率为ki)        2.找到出口,走出迷宫 (概率为ei)

2013-10-05 22:09:21 535

原创 hdu 4405 Aeroplane chess

题目大意:有n+1个格子, m个飞机,一个人从第0个格子出发,每次通过掷骰子来确定他的位置,若得到的值为k (k=1,2…6),则下次将在第(0+k)个格子处。若飞机的作用位置为(x,y)(x解题思路:用邻接表存储飞机的作用位置, 用dp[i] 表示此人在第i个格子处,到达第n个格子所需掷骰子数的期望。从后往前推,显然 dp[n] = 0。如果有一个飞机的作用位置为(i,j);则dp[

2013-10-05 16:54:31 687

原创 POJ 2096 Collecting Bugs

题目大意:一个软件有s个子系统, 会产生n种bug ,Ivan一天找一个bug,这个bug属于某种类别,出现在某个子系统中,求找到全部 n种bug,且每个子系统中都找到bug的天数的期望。已知:每个bug出现在某个子系统的概率为1/ s , 属于某种类别的概率为1/n。解题思路:用dp[i][j] 表示已找到i种bug,且属于j个子系统 ,要达到所求还需要的天数的期望,显然:dp[n]

2013-10-04 22:50:19 780

原创 hdu 4089 Activation

题目大意:有n个人都是仙剑5的粉丝,现要在官网上激活游戏,(其中主角Tomato最初排名为m),对于队列中的第一个人,在激活的时候有以下五种情况:1.激活失败:留在队列中继续等待下一次激活(概率为p1)2.失去连接:激活失败,并且出队列然后排到队列的尾部(概率为p2)3.激活成功:出队列(概率为p3)4.服务器瘫:服务器停止服务了,所有人都无法激活了(概率为p4)求服务器瘫痪并

2013-10-04 13:23:47 683

原创 RMQ(Range Minimum/Maximum Query)-ST算法

RMQ(Range Minimum/Maximum Query)-ST算法题记:看到了一篇有关RMQ-ST算法(求区间最值问题)的文章,感觉不错,分享过来共X学习之~~ 来看一下ST算法是怎么实现的(以最大值为例):首先是预处理,用一个DP解决。设a[i]是要求区间最值的数列,f[i,j]表示从第i个数起连续2^j个数中的最大值。例如数列3 2 4 5 6 8 1 2

2013-10-02 17:50:14 622

原创 hdu 4082 Hou Yi's secret

题目大意:给定N个点,求能够组成的三角形中相似三角形的最大的数目解题思路:就是各种枚举啊 然后考虑了各种情况 结果各种wrong啊 悲剧啊~~ 郁闷啊~~  精度卡的太…了  最后发现是因为开方损失了精度。谨记谨记:以后计算几何的题尽量少开方!!!!!代码实现:#include #include #include #include #in

2013-10-02 14:10:09 723

原创 状态压缩 sgu 223

题目大意:给你一个N*N的棋盘,要你在其中放入K个国王,每个国王会攻击到以它为中心的九宫格的相邻8个位置,求方案总数.这道题可以用状态压缩的思想来做.我们在进行DP的时候,我们可以通过已知前 i-1 行的最优解来得出前i行的最优解,那么这就涉及到一个问题,我们如何来表示每一行的状态呢?这也就是状态压缩的动机.如果我们不能够很方便的来表示状态,我们可以把很多维的状态,每一

2013-10-01 23:49:52 703

windows64+Python3.4下Numpy+Scipy+Matplotlib安装文件

windows64+Python3.4下Numpy+Scipy+Matplotlib安装文件,部分含有.exe文件

2016-07-20

空空如也

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

TA关注的人

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