1

一夺宝比赛共5人报名参加,奖励为一堆金币,比赛规则如下:

参赛者互不认识,也不知道其他人的存在

参赛者不知道比赛的整体进度及其他人的当前名次

每名参赛者找到金币后需要先将金币分成5等份,然后拿走自己那一份

若金币不能被5等份,需要参赛者先从自己口袋里面补充一些金币进去,然后5等份

5个人都找到金币后,比赛结束

比赛结束后,,已知参赛者在平分金币时每人都补充了1个金币进去,而且最终剩余的金币数量在1000至2000之间

请编码计算5名参赛者各自拿到了多少金币?

2

【编程题】农夫有一块土地需要灌溉,现将这块土分为N* M个1 *1的小方块,然后农夫随机向这方块中放入数根水管。已知每过一个小时,水管中的水就会蔓延到该方块上下左右的四个方块之中,请问k小时后,有多少个方块仍然需要被灌溉?
输出:未被灌溉的方块个数
例如:

[

[0,1,0,0,0]
[0,0,0,1,0]
[0,1,0,0,0]
[0,0,0,0,0]

]

输出:1
解析:
1小时后:

[

[1,1,1,1,0]
[0,1,1,1,1]
[1,1,1,1,0]
[0,1,0,0,0]

]
2小时后:

[

[1,1,1,1,1]
[1,1,1,1,1]
[1,1,1,1,1]
[1,1,1,1,0]

]

3

给定一个二叉树,它的每个结点都存放着一个整数值。

找出路径和等于给定数值的路径总数。

路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

二叉树不超过1000个节点,且节点数值范围是 [-1000000,1000000] 的整数。

示例:

root = [10,5,-3,3,2,null,11,3,-2,null,1], sum = 8

       10
     /  \
    5   -3
   / \    \
  3   2   11
 / \   \
3  -2   1

返回 3。和等于 8 的路径有:

  1. 5 -> 3
  2. 5 -> 2 -> 1
  3. -3 -> 11

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/path-sum-iii

4

有 n 个气球,编号为0 到 n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中。

现在要求你戳破所有的气球。每当你戳破一个气球 i 时,你可以获得 nums[left] * nums[i] * nums[right] 个硬币。 这里的 left 和 right 代表和 i 相邻的两个气球的序号。注意当你戳破了气球 i 后,气球 left 和气球 right 就变成了相邻的气球。

求所能获得硬币的最大数量。

说明:

你可以假设 nums[-1] = nums[n] = 1,但注意它们不是真实存在的所以并不能被戳破。
0 ≤ n ≤ 500, 0 ≤ nums[i] ≤ 100
示例:

输入: [3,1,5,8]
输出: 167
解释: nums = [3,1,5,8] –> [3,5,8] –> [3,8] –> [8] –> []
coins = 3 *1 * 5 + 3 *5 * 8 + 1 *3 * 8 + 1 *8 *1 = 167

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/burst-balloons