
深度优先搜索
1
原来的就挺好
这个作者很懒,什么都没留下…
展开
-
494. 目标和
给你一个整数数组 nums 和一个整数 target 。向数组中的每个整数前添加 ‘+’ 或 ‘-’ ,然后串联起所有整数,可以构造一个 表达式 :例如,nums = [2, 1] ,可以在 2 之前添加 ‘+’ ,在 1 之前添加 ‘-’ ,然后串联起来得到表达式 “+2-1” 。返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。示例 1:输入:nums = [1,1,1,1,1], target = 3输出:5解释:一共有 5 种方法让最终目标和为 3 。-原创 2021-06-08 17:20:03 · 124 阅读 · 0 评论 -
3481. 阶乘的和
给定一个非负整数 n,请你判断是否存在一些整数 xi,能够使得 n=∑1≤i≤txi!,其中 t≥1,xi≥0,xi=xj iff i=j。iff 表示当且仅当。输入格式输入包含多组测试数据。每组数据占一行,包含一个非负整数 n。最后一行是一个负数,表示输入结束,无需处理。输出格式每组数据输出一行结果,如果 n 能表示为若干数的阶乘之和,则输出 YES,否则输出 NO。数据范围0≤n≤106,每组输入最多包含 100 组数据。输入样例:9-1输出样例:YES此题需要注意0的阶原创 2021-05-16 21:37:36 · 157 阅读 · 0 评论 -
3502. 不同路径数
给定一个 n×m 的二维矩阵,其中的每个元素都是一个 [1,9] 之间的正整数。从矩阵中的任意位置出发,每次可以沿上下左右四个方向前进一步,走过的位置可以重复走。走了 k 次后,经过的元素会构成一个 (k+1) 位数。请求出一共可以走出多少个不同的 (k+1) 位数。输入格式第一行包含三个整数 n,m,k。接下来 n 行,每行包含 m 个空格隔开的整数,表示给定矩阵。输出格式输出一个整数,表示可以走出的不同 (k+1) 位数的个数。数据范围对于 30% 的数据, 1≤n,m≤2,0≤k≤原创 2021-05-14 17:20:14 · 181 阅读 · 0 评论 -
279. 完全平方数
给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, …)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。给你一个整数 n ,返回和为 n 的完全平方数的 最少数量 。完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。示例 1:输入:n = 12输出:3解释:12 = 4 + 4 + 4示例 2:输入:n = 13输出:2解释:13 = 4 + 9动态规划原创 2021-03-29 18:04:06 · 123 阅读 · 0 评论 -
130. 被围绕的区域
给你一个 m x n 的矩阵 board ,由若干字符 ‘X’ 和 ‘O’ ,找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例 1:输入:board = [[“X”,“X”,“X”,“X”],[“X”,“O”,“O”,“X”],[“X”,“X”,“O”,“X”],[“X”,“O”,“X”,“X”]]输出:[[“X”,“X”,“X”,“X”],[“X”,“X”,“X”,“X”],[“X”,“X”,“X”,“X”],[“X”,“O”,“X”,“X”]]解释:被围绕的原创 2021-03-17 19:18:08 · 81 阅读 · 0 评论 -
827. 最大人工岛
在二维地图上, 0代表海洋, 1代表陆地,我们最多只能将一格 0 海洋变成 1变成陆地。进行填海之后,地图上最大的岛屿面积是多少?(上、下、左、右四个方向相连的 1 可形成岛屿)示例 1:输入: [[1, 0], [0, 1]]输出: 3解释: 将一格0变成1,最终连通两个小岛得到面积为 3 的岛屿。示例 2:输入: [[1, 1], [1, 0]]输出: 4解释: 将一格0变成1,岛屿的面积扩大为 4。示例 3:输入: [[1, 1], [1, 1]]输出: 4解释: 没有0可以原创 2021-03-12 14:55:10 · 133 阅读 · 0 评论 -
695. 岛屿的最大面积
给定一个包含了一些 0 和 1 的非空二维数组 grid 。一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 0 。)示例 1:[[0,0,1,0,0,0,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,1,1,1,0,0,0],[0,1,1,0,1,0,0,0,0,0,0,0,0],[0,1,原创 2021-03-12 14:51:24 · 70 阅读 · 0 评论 -
463. 岛屿的周长
给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域。网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100 。计算这个岛屿的周长。示例 1:输入:grid = [[0,1,0原创 2021-03-12 14:49:43 · 67 阅读 · 0 评论 -
200. 岛屿数量
给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例 1:输入:grid = [[“1”,“1”,“1”,“1”,“0”],[“1”,“1”,“0”,“1”,“0”],[“1”,“1”,“0”,“0”,“0”],[“0”,“0”,“0”,“0”,“0”]]输出:1示例 2:输入:grid = [[“1”,“1”,“0”,“0原创 2021-03-12 14:48:46 · 158 阅读 · 0 评论