741. 摘樱桃 一个N x N的网格(grid) 代表了一块樱桃地,每个格子由以下三种数字的一种来表示: 0 表示这个格子是空的,所以你可以穿过它. 1 表示这个格子里装着一个樱桃,你可以摘到樱桃然后穿过它. -1 表示这个格子里有荆棘,挡着你的路. 你的任务是在遵守下列规则的情况下,尽可能的摘到最多樱桃: 从位置 (0, 0) 出发,最后到达 (N-1, N-1) ,只能向下或向右走,并且只能穿越有效的格子(即只可以穿过值为0或者1的格子): 当到达 (N-1, N-1) 后,你要继续走,直…
题目链接 https://leetcode-cn.com/problems/predict-the-winner/ 题目说明 题解 主要方法:递推:动态规划:前缀和 解释说明: 求前缀和 pre_nums ,pre_nums[0] = 0, pre_nums[1+i] = sum(nums[0--i]) 动态规划.递推: 数据表示:设立二维数组dp,dp[i][j]表示区间 [i,j] 内先取者能取得的最大值.dpnums 初始状态:遍历 nums 数组求得长度为 1 的区间 [i,i] 内的最…
题目链接 https://leetcode-cn.com/problems/increasing-subsequences/ 题目说明 题解 主要方法:递推:动态规划 解释说明: 数据表示:观察数据范围(-100 ~ 100),设定一个201的 ans 数组,第 i 个元素存储以 i 为结尾的子结果 数据推导: 遍历给定的 nums 数组 对于每一个数 num,从 ans[0] 遍历到 ans[num+100](ans表示在nums当前数之前已经存储的子结果,限定在 ans[0] 到 ans[n…
529. 扫雷游戏 让我们一起来玩扫雷游戏! 给定一个代表游戏板的二维字符矩阵. 'M' 代表一个未挖出的地雷,'E' 代表一个未挖出的空方块,'B' 代表没有相邻(上,下,左,右,和所有4个对角线)地雷的已挖出的空白方块,数字('1' 到 '8')表示有多少地雷与这块已挖出的方块相邻,'X' 则表示一个已挖出的地雷. 现在给出在所有未挖出的方块中('M'或者'E')的下一个点击位置(行和列索引),根据以下规则,返回相应位置被点击后对应的面板: 如果一个地雷('M')被挖出,游戏就结束了- 把它…
Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)Total Submission(s): 10649    Accepted Submission(s): 3758 Problem Description The counter-terrorists found a time bomb in the dust. But this time the terrorists…
试题 算法训练 步与血 问题描述 有n*n的方格,其中有m个障碍,第i个障碍会消耗你p[i]点血.初始你有C点血,你需要从(1,1)到(n,n),并保证血量大于0,求最小步数. 输入格式 第一行3个整数n,m,c,表示棋盘大小.障碍数量和你的血量 接下来m行,每行描述一个障碍.包含三个整数x y p,分别表示障碍在第x行第y列,消耗血量为p. 输出格式 如果可以到输出步数,如果不可以,输出"No". 样例输入 10 10 10 2 8 35 1 10 25 9 9 63 5 6 46…
673. 最长递增子序列的个数 给定一个未排序的整数数组,找到最长递增子序列的个数. 示例 1: 输入: [1,3,5,4,7] 输出: 2 解释: 有两个最长递增子序列,分别是 [1, 3, 4, 7] 和[1, 3, 5, 7]. 示例 2: 输入: [2,2,2,2,2] 输出: 5 解释: 最长递增子序列的长度是1,并且存在5个子序列的长度为1,因此输出5. 注意: 给定的数组长度不超过 2000 并且结果一定是32位有符号整数. PS: 普通递推,加一个记录的数组 class Solu…
639. 解码方法 2 一条包含字母 A-Z 的消息通过以下的方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 除了上述的条件以外,现在加密字符串可以包含字符 ''了,字符''可以被当做1到9当中的任意一个数字. 给定一条包含数字和字符'*'的加密信息,请确定解码方法的总数. 同时,由于结果值可能会相当的大,所以你应当对109 + 7取模.(翻译者标注:此处取模主要是为了防止溢出) 示例 1 : 输入: "*" 输出: 9 解释: 加密…
Find all possible combinations of k numbers that add up to a number n, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers. Ensure that numbers within the set are sorted in ascending order. Example 1…
Given a 2D board and a list of words from the dictionary, find all words in the board. Each word must be constructed from letters of sequentially adjacent cell, where "adjacent" cells are those horizontally or vertically neighboring. The same le…