摘要: 01背包是动态规划中,最基础也是经典的一个算法之一。 经典题意: 1.有n个不同的物体,有体积为m的一个背包; 2.n个物体分别有自己的体积v,价值c; 输出: 在背包中能装的最大价值 题解: 首先将这n个物体的体积和价值存在两个不同的数组中(v[i],表示第i个物体的体积,c[i]表示第i个物体的 阅读全文
posted @ 2017-05-01 21:13 ouyang_wsgwz 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 同样威佐夫也有一个经典的例题: 1.有两堆数量分别为 n,m个石子的石子堆; 2.两个人轮流取石子,可以在一堆石子中取任意个,或者,在两堆石子中每堆石子取相同数目的石子; 输出: 如果先手赢,输出1,否则输出0。 题解: 首先,当n=0,m=0时,先手输。 n=1,m=1时,先手赢。 n=2,m=1 阅读全文
posted @ 2017-05-01 14:16 ouyang_wsgwz 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 对于这个博弈,有一种经典的例题: 1.只有一堆数量为n的石子; 2.只有两个人参与这个游戏; 3.两个人轮流取1--m个石子; 4.最先取完石子的人赢; 输出: 如果先手赢,输出1,否则输出0; 题解: 如果n=m+1,因为最多取m个。所以先手不论取多少个,后手都能一次拿完。 所以,要想先手赢 n= 阅读全文
posted @ 2017-05-01 13:50 ouyang_wsgwz 阅读(537) 评论(0) 推荐(0) 编辑