自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

原创 poj1185 状态dp

题意:略。代码中有些简短注释。#include using namespace std;int dp[105][65][65]; //dp[i][k][j]存储的值为当第i-1行为k状态,第i行为j状态时可放炮兵的最大数量int state[65], sum[65

2011-09-30 18:00:57 556

原创 poj2817 状态dp(二进制存储)+记忆化搜索

http://www.cnblogs.com/PureMilk/archive/2008/07/17/1245085.html#2163586   思想参考的这位的博客,写得很详细,十分感谢她(他),这也是我的第一道状态dp,代码是自己敲的,开始的时候,过不了样例,发现位运算

2011-09-29 20:22:47 1027

原创 poj1191 棋盘分割(记忆化搜索)

中文题意,大家都明白。《算法艺术与信息学竞赛》的116页有讲解,先将方差公式化简,最终确定只需求切割n-1次后n块矩形中每块矩形的总分的平方的和最小。设这个平方和为res,最终的答案就为res/n-avrg^2开根号。#include #include using

2011-09-27 22:34:13 2217

原创 poj1088 dp+记忆化搜索

就是求最长下降序列,就是深搜并记录矩阵中每个地方的最长降序列。状态转移方程为: dp[ i ][ j ] = MAX( dp[ i - 1 ][ j ] , dp[ i + 1 ][ j ], dp[ i ][ j - 1], dp[ i ][ j + 1] ) + 1;

2011-09-25 23:41:41 500

原创 poj1014 Dividing 动态规划 多重背包问题

第一次写多重背包的题,竟然1A,我真的十分地感动,哈哈。题意:Marsha 和 Bill 收集了一些弹珠,弹珠因为大小和花纹不同,有不同的价值,他们想把弹珠分成价值相同的两份,这样对两个人才公平,           问是否能够分成这样的两份。#include us

2011-09-25 17:34:25 1446

原创 poj2081

又是简单的递推。#include using namespace std;const int kMax = 500001;int list[kMax];bool Find[3500000];void makeList(){ int i; list[0]

2011-09-24 19:23:14 873

原创 poj1579 递推

递推的简单题目,根据题目的递归函数模拟一下递推过程即可。#include using namespace std;const int size = 21;int map[size][size][size];void makeMap(){ int a, b, c

2011-09-24 18:14:33 1303

原创 poj1163 动态规划 水题

题目本身很简单,开始用一个一维数组来做,只需确定一下每个数左下方和右下方的数的位置即可,测试数据通过,但是提交老是runtime error, 加大数组空间还是这个错误。。。没办法,开了二维数组,直接就A了,郁闷。#include using namespace std

2011-09-24 16:50:31 763

原创 hdu 2955 动态规划 01背包

题意:Roy要偷银行,每个银行都有一个被抓到的概率,Roy的妈妈算出一个不被抓到的概率上限,要求求出Roy偷到最多的钱且不超过被抓到的概率上限。正难则反, 状态转移方程则为  dp[ v ] = max( dp[ v - w[ i ] ] * p[ i ] , dp[ v ] ) , dp[ v ] 表示偷到  v  元逃脱的概率, w[ i ] 表示从第 i 个银行能偷到的钱, p[ i ]

2011-09-24 13:13:00 642

原创 hdu 1864 动态规划 01背包

题意大家都看得懂,需要注意两点:1.报销的只有A、B、C三种类型,要是出现D、E、F.....之类的,这张发票是不能报销的。2.一张发票上,同种类型的物品加起来大于600,这张发票就是不能报销的,而不是一定要单件物品大于600。 #include using n

2011-09-24 10:22:23 785

转载 scanf 的易错点及一些用法

我转自:http://www.cnblogs.com/mxw09/archive/2010/07/05/1771423.html 他转自:http://blog.chinaunix.net/u3/99423/showart_2100968.htmlscanf函数我曾经

2011-09-22 20:42:53 1059

原创 hdu 4041

The 36th ACM/ICPC Asia Regional Beijing Site —— Online Contest魔法女孩儿清除女巫,女巫的房间间的关系是一棵树,每次女孩儿只能进入左边的子节点,要进入右边的子节点,必须得回到父节点,又进入右边的子节点。最后输

2011-09-22 14:40:01 744

转载 【Algorithm】动态规划 (1) HDU 动态规划题集

转自:http://stevechiucn.blog.163.com/blog/static/13867751720107209937370/ DP一直是我的盲点,仅仅接触过两道最简单的DP,从来没有系统学习和总结过DP题目,以下是HDU上的46道DP题状态转移方程,

2011-09-20 14:00:47 949

原创 将整数数组转化成string

#include #include using namespace std;const int size = 24;int main(){ int i, a[size]; string s; for(i = 0; i < size; i++) a[i

2011-09-17 22:56:56 1747

原创 hdu4022 Bombing stl(map+set)

The 36th ACM/ICPC Asia Regional Shanghai Site —— Online Contest题意:轰炸机轰炸基地,一颗炸弹炸一排或一行,按顺序输出每个轰炸机轰炸基地的个数。map+set 除了代码短,时空复杂度都高,囧~要用其他方法做

2011-09-17 20:59:08 675

原创 poj2643 map

为了学习stl,用map做的题。题意:候选人有自己的一个party或者为independent的。输出最后得票最多的party名,若为independent的则输出“independent”,如果任意两个party得票相同,输出“tie”。#include #inclu

2011-09-17 20:31:44 1206

原创 poj 2463 物理水题(机械能守恒定理)

题意:James Bond 为了逃命,要绑着橡皮绳从桥上跳下,若他不能到达地面则输出Stuck in the air. 若到达地面的速率大于10m/s 输出Killed by the impact. 若到达地面速率小于10m/s 输出James Bond survives.

2011-09-17 16:23:35 717

原创 poj2488 骑士周游(深搜)

题意:给出p*q大小的棋盘,要求不重复的让骑士遍历整个棋盘,并以字典序输出经过的棋盘的位置。以数字为行(横坐标),字母为列(纵坐标),输出时是先输出行再输出列(即先输出横坐标在输 出纵坐标)。 因为要求字典序输出,只需方向数组按一定的顺序排列进行遍历,则最后骑士经过棋盘的

2011-09-15 12:49:32 802

原创 hdu 4004 (二分+贪心)

题意:青蛙通过河中央的n块石头过河, 所有石头均在与河岸垂直的一条线上,给定每块石头到河岸的距离,给出河的宽L,给定青蛙跳的次数上限m(即青蛙必须经过m或小于m次跳动,过到河对岸),求出青蛙能够过河的最小步长。当步长为河宽时,青蛙必能跳过,二分步长,求最小步长。#incl

2011-09-12 22:47:50 2073

原创 poj1637 Dinic

【题目大意】混合图欧拉回路。(1 【建模方法】把该图的无向边随便定向,计算每个点的入度和出度。如果有某个点出入度之差为奇数,那么肯定不存在欧拉回路。因为欧拉回路要求每点入度 = 出度,也就是总度数为偶数,存在奇数度点必不能有欧拉回路。好了,现在每个点入度和出度之差均为偶数。那么将这个偶数除以2,得x。也就是说,对于每一个点,只要将x条边改变方向(入>出就是变入,出>入就是变出),就

2011-09-06 21:48:59 718

原创 hdu 3829(二分图 有待复习)

想起“楼教主”的话:我不会这道题,但是AC没问题。对这道题理解不透彻,大致理解是这样的:因为小孩不喜欢猫就喜欢狗,所以喜欢猫与喜欢狗的小孩儿之间存在矛盾关系,而喜欢猫和喜欢狗的小孩儿之间没有矛盾关系,这符合二分图的概念。建图:当一个小孩儿喜欢的动物被另一个小孩儿不喜欢,这

2011-09-04 21:08:48 541

原创 小错误集锦(更新自己不熟悉的小错误)

1.rand()函数种子设定(不熟悉):srand(seed)用来将随机序列的起始点设为seed。srand((int)time(0))表示以当前时间对应的int值为随机序列起点,这样每次运行程序,由于起点不同才可以得到不同的随机数time函数给出从1970年1月1日00

2011-09-03 23:06:08 617

原创 发现自己太菜了

从今天起,从最基础的慢慢积累,尽可能多地记录自己犯过的小错误,熟悉每一点自己不熟悉的,锻炼自己的编码能力。实践是最好的老师,不要懒惰,不要偷懒只是看书,不敲代码。

2011-09-03 22:41:14 1318 1

原创 拓扑排序 poj1094

此题题目有点小问题,那也是很多人AC不了的原因:     问题是,当给定的前k项条件能够确定出大小顺序时,即便k项之后出现了矛盾条件,输出也应该是Sorted sequence determined after k relations 后面再输出排序好的序列!#include #include using namespace std;#define SIZE 27int inD

2011-09-02 20:13:27 579

原创 poj3126

bfs代码1:自己的思路写的#include #include using namespace std;#define SIZE 10000int prim[SIZE];int dist[SIZE];int visit[SIZE];int primSize

2011-09-02 19:57:35 451

原创 poj2135

题意:FJ带朋友参观自己的农场,从自己的房子出发到barn(谷仓、畜棚或车库),再从barn返回自己的房子,要求去回不走同一条路。建图:取超级源点,并与房子连一条边,容量为2;取barn与超级汇点间的边的容量为2,中间的建图方法如代码。因为此题是无向图,所以建边的时候如果

2011-09-02 19:21:00 2096 1

原创 poj2516

网络流有点寸步难行了,http://blog.sina.com.cn/s/blog_6635898a0100pabw.html 看这个博客写的代码,自己大致理解了一下,作为最小费用流的邻接矩阵实现的模板。//288K 250ms#include using namespa

2011-09-01 19:17:45 837

空空如也

空空如也

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

TA关注的人

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