剑指 offer set 23 n 个骰子的点数
题目
把 n 个骰子扔到地上, 所有骰子朝上一面的点数之和为 s. 输入 n, 打印出 s 所有可能的值出现的概率.
思路
1. 基于递归的求解方法. 深度为 n 的 dfs, 相当于求全排列, 时间效率太低
2. 基于循环的实现, 有动态规划的思想在里面. dp[n][i] 表示 n 个骰子时, 出现和为 i 的个数. 那么状态转移方程变成 dp[n+1][i] = dp[n+1][i-1]+...dp[n+1][i-6]
总结
1. 有必要把之前做过的 poj 题目再重新搞一遍, 动规题目的 dp 数组设置方法需要重新回顾