Jerring


  • 首页

  • 标签

  • 分类

  • 归档

LeetCode304-仅仅反转字母

发表于 2019-08-19 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/range-sum-query-2d-immutable/

中文链接:https://leetcode-cn.com/problems/range-sum-query-2d-immutable/

题目详述

给定一个二维矩阵,计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2)。

上图子矩阵左上角 (row1, col1) = (2, 1) ,右下角(row2, col2) = (4, 3),该子矩形内元素的总和为 8。

示例:

1
2
3
4
5
6
7
8
9
10
11
给定 matrix = [
[3, 0, 1, 4, 2],
[5, 6, 3, 2, 1],
[1, 2, 0, 1, 5],
[4, 1, 0, 1, 7],
[1, 0, 3, 0, 5]
]

sumRegion(2, 1, 4, 3) -> 8
sumRegion(1, 1, 2, 2) -> 11
sumRegion(1, 2, 2, 4) -> 12

说明:

  • 你可以假设矩阵不可变。
  • 会多次调用 sumRegion 方法。
  • 你可以假设 row1 ≤ row2 且 col1 ≤ col2。
阅读全文 »

LeetCode917-仅仅反转字母

发表于 2019-08-18 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/reverse-only-letters/

中文链接:https://leetcode-cn.com/problems/reverse-only-letters/

题目详述

给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。

示例 1:

1
2
输入:"ab-cd"
输出:"dc-ba"

示例 2:

1
2
输入:"a-bC-dEf-ghIj"
输出:"j-Ih-gfE-dCba"

示例 3:

1
2
输入:"Test1ng-Leet=code-Q!"
输出:"Qedo1ct-eeLg=ntse-T!"

提示:

  • S.length <= 100
  • 33 <= S[i].ASCIIcode <= 122
  • S 中不包含 \ or “
阅读全文 »

LeetCode832-翻转图像

发表于 2019-08-18 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/flipping-an-image/

中文链接:https://leetcode-cn.com/problems/flipping-an-image/

题目详述

给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。

水平翻转图片就是将图片的每一行都进行翻转,即逆序。例如,水平翻转 [1, 1, 0] 的结果是 [0, 1, 1]。

反转图片的意思是图片中的 0 全部被 1 替换, 1 全部被 0 替换。例如,反转 [0, 1, 1] 的结果是 [1, 0, 0]。

示例 1:

1
2
3
4
输入: [[1,1,0],[1,0,1],[0,0,0]]
输出: [[1,0,0],[0,1,0],[1,1,1]]
解释: 首先翻转每一行: [[0,1,1],[1,0,1],[0,0,0]];
然后反转图片: [[1,0,0],[0,1,0],[1,1,1]]

示例 2:

1
2
3
4
输入: [[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]]
输出: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]
解释: 首先翻转每一行: [[0,0,1,1],[1,0,0,1],[1,1,1,0],[0,1,0,1]];
然后反转图片: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]

说明:

  • 1 <= A.length = A[0].length <= 20
  • 0 <= A[i][j] <= 1
阅读全文 »

LeetCode189-旋转数组

发表于 2019-08-17 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/rotate-array/

中文链接:https://leetcode-cn.com/problems/rotate-array/

题目详述

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。

示例 1:

1
2
3
4
5
6
输入: [1,2,3,4,5,6,7] 和 k = 3
输出: [5,6,7,1,2,3,4]
解释:
向右旋转 1 步: [7,1,2,3,4,5,6]
向右旋转 2 步: [6,7,1,2,3,4,5]
向右旋转 3 步: [5,6,7,1,2,3,4]

示例 2:

1
2
3
4
5
输入: [-1,-100,3,99] 和 k = 2
输出: [3,99,-1,-100]
解释:
向右旋转 1 步: [99,-1,-100,3]
向右旋转 2 步: [3,99,-1,-100]

说明:

尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。
要求使用空间复杂度为 O(1) 的 原地 算法。

阅读全文 »

LeetCode506-相对名次

发表于 2019-08-16 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/relative-ranks/

中文链接:https://leetcode-cn.com/problems/relative-ranks/

题目详述

给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”(”Gold Medal”, “Silver Medal”, “Bronze Medal”)。

(注:分数越高的选手,排名越靠前。)

示例 1:

1
2
3
4
输入: [5, 4, 3, 2, 1]
输出: ["Gold Medal", "Silver Medal", "Bronze Medal", "4", "5"]
解释: 前三名运动员的成绩为前三高的,因此将会分别被授予 “金牌”,“银牌”和“铜牌” ("Gold Medal", "Silver Medal" and "Bronze Medal").
余下的两名运动员,我们只需要通过他们的成绩计算将其相对名次即可。

提示:

  • N 是一个正整数并且不会超过 10000。
  • 所有运动员的成绩都不相同。
阅读全文 »

LeetCode504-七进制数

发表于 2019-08-16 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/base-7/

中文链接:https://leetcode-cn.com/problems/base-7/

题目详述

给定一个整数,将其转化为7进制,并以字符串形式输出。

示例 1:

1
2
输入: 100
输出: "202"

示例 2:

1
2
输入: -7
输出: "-10"

注意: 输入范围是 [-1e7, 1e7] 。

阅读全文 »

LeetCode892-三维形体的表面积

发表于 2019-08-16 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/surface-area-of-3d-shapes/

中文链接:https://leetcode-cn.com/problems/surface-area-of-3d-shapes/

题目详述

在 N N 的网格上,我们放置一些 1 1 * 1 的立方体。

每个值 v = grid[i][j] 表示 v 个正方体叠放在对应单元格 (i, j) 上。

请你返回最终形体的表面积。

示例 1:

1
2
输入:[[2]]
输出:10

示例 2:

1
2
输入:[[1,2],[3,4]]
输出:34

示例 3:

1
2
输入:[[1,0],[0,2]]
输出:16

示例 4:

1
2
输入:[[1,1,1],[1,0,1],[1,1,1]]
输出:32

示例 5:

1
2
输入:[[2,2,2],[2,1,2],[2,2,2]]
输出:46

提示:

  • 1 <= N <= 50
  • 0 <= grid[i][j] <= 50
阅读全文 »

LeetCode1156-单字符重复子串的最大长度

发表于 2019-08-15 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/swap-for-longest-repeated-character-substring/

中文链接:https://leetcode-cn.com/problems/swap-for-maximum-repeated-substring/

题目详述

如果字符串中的所有字符都相同,那么这个字符串是单字符重复的字符串。

给你一个字符串 text,你只能交换其中两个字符一次或者什么都不做,然后得到一些单字符重复的子串。返回其中最长的子串的长度。

示例 1:

1
2
输入:text = "ababa"
输出:3

示例 2:

1
2
输入:text = "aaabaaa"
输出:6

示例 3:

1
2
输入:text = "aaabbaaa"
输出:4

示例 4:

1
2
输入:text = "aaaaa"
输出:5

示例 5:

1
2
输入:text = "abcdef"
输出:1

提示:

  • 1 <= text.length <= 20000
  • text 仅由小写英文字母组成。
阅读全文 »

LeetCode1155-掷骰子的N种方法

发表于 2019-08-14 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/number-of-dice-rolls-with-target-sum/

中文链接:https://leetcode-cn.com/problems/number-of-dice-rolls-with-target-sum/

题目详述

这里有 d 个一样的骰子,每个骰子上都有 f 个面,分别标号为 1, 2, …, f。

我们约定:掷骰子的得到总点数为各骰子面朝上的数字的总和。

如果需要掷出的总点数为 target,请你计算出有多少种不同的组合情况(所有的组合情况总共有 f^d 种),模 10^9 + 7 后返回。

示例 1:

1
2
输入:d = 1, f = 6, target = 3
输出:1

示例 2:

1
2
输入:d = 2, f = 6, target = 7
输出:6

示例 3:

1
2
输入:d = 2, f = 5, target = 10
输出:1

示例 4:

1
2
输入:d = 1, f = 2, target = 3
输出:0

示例 5:

1
2
输入:d = 30, f = 30, target = 500
输出:222616187

提示:

  • 1 <= d, f <= 30
  • 1 <= target <= 1000
阅读全文 »

LeetCode1154-一年中的第几天

发表于 2019-08-13 | 分类于 LeetCode

题目链接

英文链接:https://leetcode.com/problems/day-of-the-year/

中文链接:https://leetcode-cn.com/problems/ordinal-number-of-date/

题目详述

给你一个按 YYYY-MM-DD 格式表示日期的字符串 date,请你计算并返回该日期是当年的第几天。

通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一致。

示例 1:

1
2
输入:date = "2019-01-09"
输出:9

示例 2:

1
2
输入:date = "2019-02-10"
输出:41

示例 3:

1
2
输入:date = "2003-03-01"
输出:60

示例 4:

1
2
输入:date = "2004-03-01"
输出:61

提示:

  • date.length == 10
  • date[4] == date[7] == ‘-‘,其他的 date[i] 都是数字。
  • date 表示的范围从 1900 年 1 月 1 日至 2019 年 12 月 31 日。
阅读全文 »
123…47
Jerring

Jerring

Talk is cheap, show me the code.

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