Update 动态规划之博弈问题.md

This commit is contained in:
wadegrc
2020-03-01 17:44:31 +08:00
committed by GitHub
parent b00ec6300c
commit 3ded96bf38

View File

@ -1,6 +1,6 @@
# 动态规划之博弈问题
# Game Problems In Dynamic Programming
上一篇文章 [几道智力题](../高频面试系列/一行代码解决的智力题.md) 中讨论到一个有趣的「石头游戏」,通过题目的限制条件,这个游戏是先手必胜的。但是智力题终究是智力题,真正的算法问题肯定不会是投机取巧能搞定的。所以,本文就借石头游戏来讲讲「假设两个人都足够聪明,最后谁会获胜」这一类问题该如何用动态规划算法解决。
In the last article [几道智力题](../高频面试系列/一行代码解决的智力题.md) 中讨论到一个有趣的「石头游戏」,通过题目的限制条件,这个游戏是先手必胜的。但是智力题终究是智力题,真正的算法问题肯定不会是投机取巧能搞定的。所以,本文就借石头游戏来讲讲「假设两个人都足够聪明,最后谁会获胜」这一类问题该如何用动态规划算法解决。
博弈类问题的套路都差不多,下文举例讲解,其核心思路是在二维 dp 的基础上使用元组分别存储两个人的博弈结果。掌握了这个技巧以后,别人再问你什么俩海盗分宝石,俩人拿硬币的问题,你就告诉别人:我懒得想,直接给你写个算法算一下得了。
@ -185,4 +185,4 @@ int stoneGame(int[] piles) {
**致力于把算法讲清楚!欢迎关注我的微信公众号 labuladong查看更多通俗易懂的文章**
![labuladong](../pictures/labuladong.png)
![labuladong](../pictures/labuladong.png)