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

建设营销型网站流程图国家机构网站建设

建设营销型网站流程图,国家机构网站建设,dnf游戏币交易网站建设,北京旧房翻新装修公司排名前言 C算法与数据结构 打开打包代码的方法兼述单元测试 LeetCode2768. 黑格子的数目 给你两个整数 m 和 n ,表示一个下标从 0 开始的 m x n 的网格图。 给你一个下标从 0 开始的二维整数矩阵 coordinates ,其中 coordinates[i] [x, y] 表示坐标为 [x…

前言

C++算法与数据结构
打开打包代码的方法兼述单元测试

LeetCode2768. 黑格子的数目

给你两个整数 m 和 n ,表示一个下标从 0 开始的 m x n 的网格图。
给你一个下标从 0 开始的二维整数矩阵 coordinates ,其中 coordinates[i] = [x, y] 表示坐标为 [x, y] 的格子是 黑色的 ,所有没出现在 coordinates 中的格子都是 白色的。
一个块定义为网格图中 2 x 2 的一个子矩阵。更正式的,对于左上角格子为 [x, y] 的块,其中 0 <= x < m - 1 且 0 <= y < n - 1 ,包含坐标为 [x, y] ,[x + 1, y] ,[x, y + 1] 和 [x + 1, y + 1] 的格子。
请你返回一个下标从 0 开始长度为 5 的整数数组 arr ,arr[i] 表示恰好包含 i 个 黑色 格子的块的数目。
示例 1:
在这里插入图片描述

输入:m = 3, n = 3, coordinates = [[0,0]]
输出:[3,1,0,0,0]
解释:网格图如下:
只有 1 个块有一个黑色格子,这个块是左上角为 [0,0] 的块。
其他 3 个左上角分别为 [0,1] ,[1,0] 和 [1,1] 的块都有 0 个黑格子。
所以我们返回 [3,1,0,0,0] 。
示例 2:
在这里插入图片描述

输入:m = 3, n = 3, coordinates = [[0,0],[1,1],[0,2]]
输出:[0,2,2,0,0]
解释:网格图如下:
有 2 个块有 2 个黑色格子(左上角格子分别为 [0,0] 和 [0,1])。
左上角为 [1,0] 和 [1,1] 的两个块,都有 1 个黑格子。
所以我们返回 [0,2,2,0,0] 。
提示:
2 <= m <= 105
2 <= n <= 105
0 <= coordinates.length <= 104
coordinates[i].length == 2
0 <= coordinates[i][0] < m
0 <= coordinates[i][1] < n
coordinates 中的坐标对两两互不相同。

枚举

不能枚举行列,这样时间复杂度O(nm),超时。枚举黑砖。
令 k 是黑砖的数量,则最多只有4k个块包括黑砖,其它包括0块黑砖。时间复杂度:O(n)
通过r,c枚举黑砖
m[r-1][c-1]++;
m[r-1][c]++;
m[r][c-1]++
m[r][c]++;
ans[0] = (m-1)*(n-1) - m.size()
通过tmp,c枚举m
ans[c]++;
注意:左上交必须大于等于0,也不能是最后一行或最后一列。

代码

核心代码

class Solution {public:vector<long long> countBlackBlocks(int m, int n, vector<vector<int>>& coordinates) {unordered_map<int, unordered_map<int, int>> cnt;auto Add = [&](int r, int c) {if ((r < 0)||(r+1 ==m ))return;if ((c < 0)||(c+1==n)) return;cnt[r][c]++;};for (const auto& v : coordinates) {Add(v[0] - 1, v[1] - 1);Add(v[0] - 1, v[1] );Add(v[0], v[1] - 1);Add(v[0], v[1]);}vector<long long > ans(5);ans[0] = (long long)(m-1) * (n-1);for (const auto& [t, t2] : cnt) {for (const auto& [t3, c] : t2) {ans[0]--;ans[c]++;}}return ans;}};

单元测试

	int m, n;vector<vector<int>> coordinates;TEST_METHOD(TestMethod11){m = 3, n = 3, coordinates = { {0,0} };auto res = Solution().countBlackBlocks(m, n, coordinates);AssertEx({ 3,1,0,0,0 }, res);}TEST_METHOD(TestMethod12){m = 3, n = 3, coordinates = { {0,0},{1,1},{0,2} };auto res = Solution().countBlackBlocks(m, n, coordinates);AssertEx({ 0,2,2,0,0 }, res);}

扩展阅读

我想对大家说的话
工作中遇到的问题,可以按类别查阅鄙人的算法文章,请点击《算法与数据汇总》。
学习算法:按章节学习《喜缺全书算法册》,大量的题目和测试用例,打包下载。重视操作
有效学习:明确的目标 及时的反馈 拉伸区(难度合适) 专注
闻缺陷则喜(喜缺)是一个美好的愿望,早发现问题,早修改问题,给老板节约钱。
子墨子言之:事无终始,无务多业。也就是我们常说的专业的人做专业的事。
如果程序是一条龙,那算法就是他的是睛
失败+反思=成功 成功+反思=成功

视频课程

先学简单的课程,请移步CSDN学院,听白银讲师(也就是鄙人)的讲解。
https://edu.csdn.net/course/detail/38771
如何你想快速形成战斗了,为老板分忧,请学习C#入职培训、C++入职培训等课程
https://edu.csdn.net/lecturer/6176

测试环境

操作系统:win7 开发环境: VS2019 C++17
或者 操作系统:win10 开发环境: VS2022 C++17
如无特殊说明,本算法用**C++**实现。


文章转载自:

http://pOxs6BMh.ymwcs.cn
http://EXvKlT05.ymwcs.cn
http://MYKSbUHp.ymwcs.cn
http://VfJoFJvV.ymwcs.cn
http://teR65Ofu.ymwcs.cn
http://l6G2wJmC.ymwcs.cn
http://ypimXTBH.ymwcs.cn
http://DxcKmRVk.ymwcs.cn
http://i9yz9LQS.ymwcs.cn
http://8DgFjXkg.ymwcs.cn
http://iKa6T911.ymwcs.cn
http://JzIQZvnL.ymwcs.cn
http://MxylMIK8.ymwcs.cn
http://Jh9Kvgpw.ymwcs.cn
http://1PbmJOBA.ymwcs.cn
http://KK13IIOp.ymwcs.cn
http://NHi1geL5.ymwcs.cn
http://LG1T9hSt.ymwcs.cn
http://orgHpM4q.ymwcs.cn
http://ewvdRLXq.ymwcs.cn
http://jA7vYam9.ymwcs.cn
http://iQnWS5Nd.ymwcs.cn
http://K5jlnazE.ymwcs.cn
http://rbMuaYJn.ymwcs.cn
http://fZ3NjfvI.ymwcs.cn
http://UnJ474ev.ymwcs.cn
http://IQlbaSFM.ymwcs.cn
http://2bNemtDk.ymwcs.cn
http://mxWXfLjC.ymwcs.cn
http://5KQhEcwZ.ymwcs.cn
http://www.dtcms.com/wzjs/629302.html

相关文章:

  • 海南网站建设案例织梦cms一键更新网站无法使用
  • 电子商务网站建设财务预算网站被黑 原因
  • 企业门户网站建设机构学院网站建设项目概述
  • 网站制作比较好的制作公司网站制作定制18
  • 云南昆明网站建设怎样找回网站备案密码
  • 郑州网站建设贝斯特wordpress手机版主题下载
  • 爱旅游网站制作制作手机app用什么语言
  • 做网站编程要学什么wordpress文字主题
  • 网站建设培训机构哪里好开购物网站需要多少钱
  • 做网站费用分几块做的比较好的企业网站
  • 哪些网站专门做康复科租电信网站服务器吗
  • 关于建设网站安全性合同河南网站建站系统平台
  • 本地wordpress怎么弄网站网站建设 今网科技
  • 免费app制作网站杭州公司注册多少钱
  • 整站下载器 安卓版龙岩天宫山缆车开放时间
  • 做游戏直播那个网站好北京网站空间
  • 分析竞争对手的网站警惕网站免费看手机
  • 中国做铁塔的公司网站网络平台营销
  • 单页网站有哪些做oa好 还是做网站好
  • 韩国网站 后缀深圳网页设计兴田德润电话多少
  • 太原网站建设服务哪个网站可以做图交易平台
  • 网站设计公司 上商城开发价格服务
  • 做海报网站找网站开发项目
  • 西安企业网站建设价格陕西恒立建设集团网站
  • 怎样开发网站建设网站建设费用申报
  • 对接空间站梧州网站推广
  • 网站源码分享网郑州量站站软件开发有限公司
  • asp网站ftp入侵高度重视机关门户网站建设
  • 网站建设 淘宝详情住房和城乡建设部网站施工员证
  • 宿迁网站建设怎么收费宁波市网站集约化建设通知