- 博客(5)
- 资源 (3)
- 收藏
- 关注
原创 约瑟夫环问题
约瑟夫环问题是一个数学的应用问题:已知M个人(以编号1,2,3...M分别表示)围坐在一张圆桌周围。从编号为1的人开始报数,数到N的那个人出列;他的下一个人又从1开始报数,数到N的那个人又出列;依此规律重复下去,直到圆桌周围的人只剩下一人。 一、问题的来历 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞
2015-07-17 22:56:34 624
原创 有物品数量限制的背包问题
解决思路: 利用递归,1...N个物品,每种有Amount[i]个,那么从第N个物品开始选择,选0个、...、Amount[i]个第N个物品,依次计算价值,找出最大的,返回。 F(N) = max{ F(N-1, Lmt-n*Cost(n)) + n*Value(n), | n=0,..., Amount[i]}。 #ifndef HJD_SNACKBACK_H_ #define HJD_S
2015-07-17 20:38:34 4863
原创 位操作(一)
int hjdfunc(int nX, int nY) { return(nX&nY+((nX^nY)>>1))); } 问:hjdfunc(50, 70)返回多少? 不能用笨办法,把50、70转成2进制。 (nX+nY)/2,可以考虑成: (1)两个2进制数先把都是‘1’的位相加再除以2; (2)把不同的位上相加,即‘0’对应‘1’,然后再除以2; (3)前两部分相加,
2015-07-06 22:23:08 327
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人