Day 50
第679题:
你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *
,/
,+
,-
,(
,)
的运算得到 24。(来自LeetCode)
1、题目规定给定4个数和四种运算符,如果用四个数运算得到24,它们之间也只能用到三种运算符;
首先取两个数和一个运算符来计算得出结果,然后将这个结果取代取的两个数,这时候集合里面就少了一个数;
再次重复之前的步骤,直到集合内只有一个数,判断是否为24,判断返回结果。
第653题:
给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true。(来自LeetCode)
1、将二叉搜索树的中序遍历求出非降序的集合,然后利用双指针对这个集合进行遍历,求出是否存在目标结果。
第657题:
在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。
移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。来源:力扣(LeetCode)
注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。
1、利用x和y代表机器人所在的横竖坐标,当移动一步时,便将坐标加减,最后判断最后的xy是否都等于0。
2、计算向上向下向左向右各自的步数总和,最后判断左右和上下是否一样,一样说明再远点。
第661题:
包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。来源:力扣(LeetCode)
1、直接将这个位置的值和旁边的值全部加起来求值即可;
当然需要创建一个新的一样大小的矩阵,来更新图片。