- 博客(10)
- 收藏
- 关注
转载 博弈问题
博弈知识汇总 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个 人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏 ,别看这游戏极其简单,却蕴含着深刻的数学原理。下面我们来分析一下要如何才能够 取胜。 (一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规 定每次至少取一个,最多取m个。最后取光者得胜
2015-08-12 18:39:19 332
转载 hdu 题目分类
分类一(详细): 分类二: 基础题:1000、1001、1004、1005、1008、1012、1013、1014、1017、1019、1021、1028、1029、1032、1037、1040、1048、1056、1058、1061、1070、1076、1089、1090、1091、1092、1093、1094、1095、1096、1097、1098、1106、1108、1157、11
2015-08-08 23:27:50 268
转载 最短路算法
最短路径问题旨在寻找图中两节点之间的最短路径,常用的算法有以下四种。注意是把图处理成无向还是有向Dijkstra’s (权值非负) 1 Dijkstra’s算法解决的是图中单个源点到其它顶点的最短路径。只能解决权值非负 2 Dijkstral只能求出任意点到达源点的最短距离(不能求出任意两点之间的最短距离),同时适用于有向图和无向图,复杂度为O(n^2). 3算法的过程: 1设置顶点集合S并
2015-08-05 21:56:33 412
原创 hdu 4161
给出一串数,求经过多少次状态这串数均变成0; 如果超过1000次,则认为不存在,输出not attained 否则,输出次数 规则为:序列的第i个元素等于第i+1个元素与第i个元素之差的绝对值,而最后一个为第一个元素与最后一个元素之差的绝对值 #include #include #include #include #include #include #include
2015-08-04 17:38:43 268
原创 hdu 4165 卡特兰数列
题意:在一个瓶子里有N片药,每次吃半片,从瓶子里可能拿出整片,也可能拿出半片,如果拿出整片,记为W,半片记为H。问有多少种排列。 用dp[i][j]表示结果,i, j,分别表示整片的和半片的。则dp[i][j] = dp[i-1][j+1] + dp[i][j-1];因为吃整片的话半片就加一而整片就减一,吃半片了半片就减一。 #include #include #include #inc
2015-08-04 17:20:15 286
原创 HDU 4359 简单dp
题意:定义Bear Tree为一颗二叉树,这种二叉树每个结点有一个权值,范围在2^0~2^n-1,并且每个值只用一次,对于每个结点,如果同时存在左右子树,那么左子树的权值和要小于右子树的权值和。求点数为N,层次为D的Bear Tree的数量。 思路: 2^0 + 2^1 + ... + 2^n 根据这个性质,我们可以得出权值最大节点必须在右子树上,因为假设权值最大的节点在左子树上,
2015-08-03 21:22:25 333
原创 hdu 4336 Card Colletor 动态规划-概率dp
题意:有n个卡片,你现在买一包方便面,每包方便面出现其中一个卡片的概率为 p[i] ,问你集齐一套卡片需要的张数的数学期望。每包里至多只有一张卡片
2015-07-31 22:52:46 235
原创 hdu 4283 You are the one 区间dp
题意:有n个男孩,每个男孩有个不开心值D,如果这个男孩第k个上场,那么他的不开心值就是(k-1)*D,有一个小黑屋能调整男孩出场的顺序,问应该如何调整顺序使的不开心值的总值最小,因为小黑屋很窄,最先进去的男孩最后出来,即栈 题解: dp[i][j]表示区间[i,j]的最小总不开心值 把区间[i,j]单独来看,则第i个人可以是第一个出场,也可以是最后一个出场(j-i+1),也可以是在
2015-07-30 19:41:55 243
转载 hdu 4135 容斥原理
题意:题目大意是求(a,b)区间与n互质的数的个数 题解:首先求(a,b)区间的个数可以转化成(1,b)间的个数减去(1,a-1)间的个数 然后求互质的个数可以转化成总个数减去不互质的个数 那怎么求不互质的个数呢?首先求出n的质因子 求出质因子的两个算法 1.n的个数不多,但数字大(转自ACM不懈的追求大神的博客) #include int main() { __i
2015-07-28 19:05:56 237
原创 hdu 4149 magic potion 位运算
题目大意: 用m给x1....x8,8个数字加密,加密方式是x1对m取异或。。。。(x1+...x8)对m取异或。给出加密后的9个数,求m 题解: 设异或之前的数为a1,a2,...a8 异或之后的数为b1,b2...b8 从最后一位往前算 如果b中有奇数个1,那么也就有奇数个0 如果m这一位为0,则有奇数个1,和为1,异或之后的结果为1 如果m这一位为1,则有奇数个0,和
2015-07-28 16:22:27 449
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人