Jerring


  • 首页

  • 标签

  • 分类

  • 归档

LeetCode891-子序列宽度之和

发表于 2019-07-03 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/sum-of-subsequence-widths/

中文链接:https://leetcode-cn.com/problems/sum-of-subsequence-widths/

题目详述

给定一个整数数组 A ,考虑 A 的所有非空子序列。

对于任意序列 S ,设 S 的宽度是 S 的最大元素和最小元素的差。

返回 A 的所有子序列的宽度之和。

由于答案可能非常大,请返回答案模 10^9+7。

示例:

1
2
3
4
5
6
输入:[2,1,3]
输出:6
解释:
子序列为 [1],[2],[3],[2,1],[2,3],[1,3],[2,1,3] 。
相应的宽度是 0,0,0,1,1,2,2 。
这些宽度之和是 6 。

提示:

  • 1 <= A.length <= 20000
  • 1 <= A[i] <= 20000
阅读全文 »

LeetCode829-连续整数求和

发表于 2019-07-02 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/consecutive-numbers-sum/

中文链接:https://leetcode-cn.com/problems/consecutive-numbers-sum/

题目详述

给定一个正整数 N,试求有多少组连续正整数满足所有数字之和为 N?

示例 1:

1
2
3
输入: 5
输出: 2
解释: 5 = 5 = 2 + 3,共有两组连续整数([5],[2,3])求和后为 5。

示例 2:

1
2
3
输入: 9
输出: 3
解释: 9 = 9 = 4 + 5 = 2 + 3 + 4

示例 3:

1
2
3
输入: 15
输出: 4
解释: 15 = 15 = 8 + 7 = 4 + 5 + 6 = 1 + 2 + 3 + 4 + 5

说明: 1 <= N <= 10 ^ 9

阅读全文 »

LeetCode650-只有两个键的键盘

发表于 2019-07-02 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/rectangle-area/

中文链接:https://leetcode-cn.com/problems/rectangle-area/

题目详述

在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。

每个矩形由其左下顶点和右上顶点坐标表示,如图所示。

示例:

输入: -3, 0, 3, 4, 0, -1, 9, 2
输出: 45
说明: 假设矩形面积不会超出 int 的范围。

阅读全文 »

LeetCode650-只有两个键的键盘

发表于 2019-07-02 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/2-keys-keyboard/

中文链接:https://leetcode-cn.com/problems/2-keys-keyboard/

题目详述

最初在一个记事本上只有一个字符 ‘A’。你每次可以对这个记事本进行两种操作:

  1. Copy All (复制全部) : 你可以复制这个记事本中的所有字符(部分的复制是不允许的)。
  2. Paste (粘贴) : 你可以粘贴你上一次复制的字符。

给定一个数字 n 。你需要使用最少的操作次数,在记事本中打印出恰好 n 个 ‘A’。输出能够打印出 n 个 ‘A’ 的最少操作次数。

示例 1:

1
2
3
4
5
6
7
输入: 3
输出: 3
解释:
最初, 我们只有一个字符 'A'。
第 1 步, 我们使用 Copy All 操作。
第 2 步, 我们使用 Paste 操作来获得 'AA'。
第 3 步, 我们使用 Paste 操作来获得 'AAA'。

说明:

n 的取值范围是 [1, 1000] 。

阅读全文 »

LeetCode458-可怜的小猪

发表于 2019-07-01 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/poor-pigs/

中文链接:https://leetcode-cn.com/problems/poor-pigs/

题目详述

有 1000 只水桶,其中有且只有一桶装的含有毒药,其余装的都是水。它们从外观看起来都一样。如果小猪喝了毒药,它会在 15 分钟内死去。

问题来了,如果需要你在一小时内,弄清楚哪只水桶含有毒药,你最少需要多少只猪?

回答这个问题,并为下列的进阶问题编写一个通用算法。

进阶:

假设有 n 只水桶,猪饮水中毒后会在 m 分钟内死亡,你需要多少猪(x)就能在 p 分钟内找出 “有毒” 水桶?这 n 只水桶里有且仅有一只有毒的桶。

提示:

  1. 可以允许小猪同时饮用任意数量的桶中的水,并且该过程不需要时间。
  2. 小猪喝完水后,必须有 m 分钟的冷却时间。在这段时间里,只允许观察,而不允许继续饮水。
  3. 任何给定的桶都可以无限次采样(无限数量的猪)。
阅读全文 »

LeetCode462-最少移动次数使数组元素相等II

发表于 2019-06-30 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/

中文链接:https://leetcode-cn.com/problems/minimum-moves-to-equal-array-elements-ii/

题目详述

给定一个非空整数数组,找到使所有数组元素相等所需的最小移动数,其中每次移动可将选定的一个元素加1或减1。 您可以假设数组的长度最多为10000。

例如:

1
2
3
4
5
6
7
8
9
10
输入:
[1,2,3]

输出:
2

说明:
只有两个动作是必要的(记得每一步仅可使其中一个元素加1或减1):

[1,2,3] => [2,2,3] => [2,2,2]
阅读全文 »

LeetCode1091-二进制矩阵中的最短路径

发表于 2019-06-29 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/shortest-path-in-binary-matrix/

中文链接:https://leetcode-cn.com/problems/shortest-path-in-binary-matrix/

题目详述

在一个 N × N 的方形网格中,每个单元格有两种状态:空(0)或者阻塞(1)。

一条从左上角到右下角、长度为 k 的畅通路径,由满足下述条件的单元格 C_1, C_2, …, C_k 组成:

  • 相邻单元格 C_i 和 C_{i+1} 在八个方向之一上连通(此时,C_i 和 C_{i+1} 不同且共享边或角)
  • C_1 位于 (0, 0)(即,值为 grid[0][0])
  • C_k 位于 (N-1, N-1)(即,值为 grid[N-1][N-1])
  • 如果 C_i 位于 (r, c),则 grid[r][c] 为空(即,grid[r][c] == 0)

返回这条从左上角到右下角的最短畅通路径的长度。如果不存在这样的路径,返回 -1 。

示例 1:

1
2
3
输入:[[0,1],[1,0]]

输出:2

示例 2:

1
2
3
输入:[[0,0,0],[1,1,0],[1,1,0]]

输出:4

提示:

  1. 1 <= grid.length == grid[0].length <= 100
  2. grid[i][j] 为 0 或 1
阅读全文 »

LeetCode1089-复写零

发表于 2019-06-29 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/duplicate-zeros/

中文链接:https://leetcode-cn.com/problems/duplicate-zeros/

题目详述

给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。

注意:请不要在超过该数组长度的位置写入元素。

要求:请对输入的数组 就地 进行上述修改,不要从函数返回任何东西。

示例 1:

1
2
3
输入:[1,0,2,3,0,4,5,0]
输出:null
解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]

示例 2:

1
2
3
输入:[1,2,3]
输出:null
解释:调用函数后,输入的数组将被修改为:[1,2,3]

提示:

  1. 1 <= arr.length <= 10000
  2. 0 <= arr[i] <= 9
阅读全文 »

LeetCode1093-大样本统计

发表于 2019-06-29 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/statistics-from-a-large-sample/

中文链接:https://leetcode-cn.com/problems/statistics-from-a-large-sample/

题目详述

我们对 0 到 255 之间的整数进行采样,并将结果存储在数组 count 中:count[k] 就是整数 k 的采样个数。

我们以 浮点数 数组的形式,分别返回样本的最小值、最大值、平均值、中位数和众数。其中,众数是保证唯一的。

我们先来回顾一下中位数的知识:

  • 如果样本中的元素有序,并且元素数量为奇数时,中位数为最中间的那个元素;
  • 如果样本中的元素有序,并且元素数量为偶数时,中位数为中间的两个元素的平均值。

示例 1:

1
2
输入:count = [0,1,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
输出:[1.00000,3.00000,2.37500,2.50000,3.00000]

示例 2:

1
2
输入:count = [0,4,3,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
输出:[1.00000,4.00000,2.18182,2.00000,1.00000]

提示:

  1. count.length == 256
  2. 1 <= sum(count) <= 10^9
  3. 计数表示的众数是唯一的
  4. 答案与真实值误差在 10^-5 以内就会被视为正确答案
阅读全文 »

LeetCode1094-拼车

发表于 2019-06-29 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/car-pooling/

中文链接:https://leetcode-cn.com/problems/car-pooling/

题目详述

假设你是一位顺风车司机,车上最初有 capacity 个空座位可以用来载客。由于道路的限制,车 只能 向一个方向行驶(也就是说,不允许掉头或改变方向,你可以将其想象为一个向量)。

这儿有一份行程计划表 trips[][],其中 trips[i] = [num_passengers, start_location, end_location] 包含了你的第 i 次行程信息:

  • 必须接送的乘客数量;
  • 乘客的上车地点;
  • 以及乘客的下车地点。

这些给出的地点位置是从你的 初始 出发位置向前行驶到这些地点所需的距离(它们一定在你的行驶方向上)。

请你根据给出的行程计划表和车子的座位数,来判断你的车是否可以顺利完成接送所用乘客的任务(当且仅当你可以在所有给定的行程中接送所有乘客时,返回 true,否则请返回 false)。

示例 1:

1
2
输入:trips = [[2,1,5],[3,3,7]], capacity = 4
输出:false

示例 2:

1
2
输入:trips = [[2,1,5],[3,3,7]], capacity = 5
输出:true

示例 3:

1
2
输入:trips = [[2,1,5],[3,5,7]], capacity = 3
输出:true

示例 4:

1
2
输入:trips = [[3,2,7],[3,7,9],[8,3,9]], capacity = 11
输出:true

提示:

  1. 你可以假设乘客会自觉遵守 “先下后上” 的良好素质
  2. trips.length <= 1000
  3. trips[i].length == 3
  4. 1 <= trips[i][0] <= 100
  5. 0 <= trips[i][1] < trips[i][2] <= 1000
  6. 1 <= capacity <= 100000
阅读全文 »
1…121314…47
Jerring

Jerring

Talk is cheap, show me the code.

462 日志
4 分类
24 标签
© 2019 Jerring
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4