农场里有若干片草地,它们分布在不同的区域。现在,农场主想要合并重叠的草地区域,以便更好地管理牛群。给定一个数组 grasslands,表示 n 个草地区域,其中单个区域为 grasslands[i] = [start_i, end_i]。请你合并所有重叠的区域,并返回一个不重叠的区域数组,该数组需恰好覆盖输入中的所有区域。
示例1
输入
[[1,3],[2,6],[8,10],[15,18]]
输出
[[1,6],[8,10],[15,18]]
示例2
输入
[[1,4],[4,5]]
输出
[[1,5]]
加载中...
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ public int[][] mergeGrasslands (int[][] grasslands) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型vector
> * @return int整型vector
> */ vector
> mergeGrasslands(vector
>& grasslands) { // write code here } };
#coding:utf-8 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param grasslands int整型二维数组 # @return int整型二维数组 # class Solution: def mergeGrasslands(self , grasslands ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ public List
> mergeGrasslands (List
> grasslands) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ function mergeGrasslands( grasslands ) { // write code here } module.exports = { mergeGrasslands : mergeGrasslands };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param grasslands int整型二维数组 # @return int整型二维数组 # class Solution: def mergeGrasslands(self , grasslands: List[List[int]]) -> List[List[int]]: # write code here
package main import "fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ func mergeGrasslands( grasslands [][]int ) [][]int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @param grasslandsRowLen int grasslands数组行数 * @param grasslandsColLen int* grasslands数组列数 * @return int整型二维数组 * @return int* returnSize 返回数组行数 * @return int** returnColumnSizes 返回数组列数 */ int** mergeGrasslands(int** grasslands, int grasslandsRowLen, int* grasslandsColLen, int* returnSize, int** returnColumnSizes ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param grasslands int整型二维数组 # @return int整型二维数组 # class Solution def mergeGrasslands(grasslands) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ def mergeGrasslands(grasslands: Array[Array[Int]]): Array[Array[Int]] = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ fun mergeGrasslands(grasslands: Array
): Array
{ // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ public int[][] mergeGrasslands (int[][] grasslands) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ export function mergeGrasslands(grasslands: number[][]): number[][] { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ func mergeGrasslands ( _ grasslands: [[Int]]) -> [[Int]] { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grasslands int整型二维数组 * @return int整型二维数组 */ pub fn mergeGrasslands(&self, grasslands: Vec
>) -> Vec
> { // write code here } }
[[1,3],[2,6],[8,10],[15,18]]
[[1,6],[8,10],[15,18]]
[[1,4],[4,5]]
[[1,5]]