当前位置: 首页 > article >正文

Golang | Leetcode Golang题解之第391题完美矩形

题目:

题解:

func isRectangleCover(rectangles [][]int) bool {
    type point struct{ x, y int }
    area, minX, minY, maxX, maxY := 0, rectangles[0][0], rectangles[0][1], rectangles[0][2], rectangles[0][3]
    cnt := map[point]int{}
    for _, rect := range rectangles {
        x, y, a, b := rect[0], rect[1], rect[2], rect[3]
        area += (a - x) * (b - y)

        minX = min(minX, x)
        minY = min(minY, y)
        maxX = max(maxX, a)
        maxY = max(maxY, b)

        cnt[point{x, y}]++
        cnt[point{x, b}]++
        cnt[point{a, y}]++
        cnt[point{a, b}]++
    }

    if area != (maxX-minX)*(maxY-minY) || cnt[point{minX, minY}] != 1 || cnt[point{minX, maxY}] != 1 || cnt[point{maxX, minY}] != 1 || cnt[point{maxX, maxY}] != 1 {
        return false
    }

    delete(cnt, point{minX, minY})
    delete(cnt, point{minX, maxY})
    delete(cnt, point{maxX, minY})
    delete(cnt, point{maxX, maxY})

    for _, c := range cnt {
        if c != 2 && c != 4 {
            return false
        }
    }
    return true
}

func min(a, b int) int {
    if a > b {
        return b
    }
    return a
}

func max(a, b int) int {
    if b > a {
        return b
    }
    return a
}

http://www.kler.cn/a/293375.html

相关文章:

  • Bugku CTF_Web——文件上传
  • 如何在算家云搭建Peach-9B-8k-Roleplay(文本生成)
  • Autosar CP 基于CAN的时间同步规范导读
  • 使用Python实现定期从API获取数据并存储到数据库的完整指南
  • 给查询业务添加redis缓存和缓存更新策略
  • LLM之模型评估:情感评估/EQ评估/幻觉评估等
  • 实战docker第一天——windows安装docker,测试,并解决被墙办法
  • 【最后一轮征稿】第三届人工智能、物联网和云计算技术国际会议(AIoTC 2024)
  • Oracle同一台服务器创建多个数据库
  • 计算机毕业设计选题推荐-中华诗词文化交流平台-Java/Python项目实战
  • cmd常用指令举例说明使用方法
  • Redis从入门再再到入门(下)
  • Opencv中的直方图(5)计算EMD距离的函数EMD()的使用
  • 面经学习(hbkj实习)
  • WPF 点在控件内 判断
  • 时序预测 | 基于DLinear+PatchTST多变量时间序列预测模型(pytorch)
  • 把iconfont 图标导出为json
  • rsync搭建全网备份
  • 奥威让您更懂现金流情况
  • 【2024数模国赛赛题思路公开】国赛E题思路丨附可运行代码丨无偿自提
  • CRUD的最佳实践,联动前后端,包含微信小程序,API,HTML等(三)
  • Kubernetes--服务发布(Service、Ingress)
  • ubuntu24.04 为什么扬声器没有声音,但是戴上耳机有声音
  • Docker 配置国内镜像源
  • SpringCloud:构建分布式系统的利器
  • 【全网首发】2024数学建模国赛C题39页word版成品论文【附带py+matlab双版本解题代码+可视化图表】