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

手机上能不能制作网站开发株洲seo优化

手机上能不能制作网站开发,株洲seo优化,阿里备案成功后怎么做网站,定制模板本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。

为了方便在PC上运行调试、分享代码文件,我还建立了相关的仓库:https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中,你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等,还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解,还可以一同分享给他人。

由于本系列文章的内容随时可能发生更新变动,欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。

银行内部的防盗安全装置已经激活。给你一个下标从 0 开始的二进制字符串数组 bank ,表示银行的平面图,这是一个大小为 m x n 的二维矩阵。 bank[i] 表示第 i 行的设备分布,由若干 '0' 和若干 '1' 组成。'0' 表示单元格是空的,而 '1' 表示单元格有一个安全设备。

对任意两个安全设备而言,如果****同时 满足下面两个条件,则二者之间存在 一个 激光束:

  • 两个设备位于两个 不同行 :r1 和 r2 ,其中 r1 < r2 。
  • 满足 r1 < i < r2 的 所有 行 i ,都 没有安全设备 。

激光束是独立的,也就是说,一个激光束既不会干扰另一个激光束,也不会与另一个激光束合并成一束。

返回银行中激光束的总数量。

示例 1:

输入:bank = ["011001","000000","010100","001000"]
输出:8
解释:在下面每组设备对之间,存在一条激光束。总共是 8 条激光束:* bank[0][1] -- bank[2][1]* bank[0][1] -- bank[2][3]* bank[0][2] -- bank[2][1]* bank[0][2] -- bank[2][3]* bank[0][5] -- bank[2][1]* bank[0][5] -- bank[2][3]* bank[2][1] -- bank[3][2]* bank[2][3] -- bank[3][2]
注意,第 0 行和第 3 行上的设备之间不存在激光束。
这是因为第 2 行存在安全设备,这不满足第 2 个条件。

示例 2:

输入:bank = ["000","111","000"]
输出:0
解释:不存在两个位于不同行的设备

提示:

  • m == bank.length
  • n == bank[i].length
  • 1 <= m, n <= 500
  • bank[i][j] 为 '0' 或 '1'

解法 数组+遍历

根据题目的要求,对于两个不同的行 r 1 r_1 r1 r 2 ( r 1 < r 2 ) r_2~(r_1 < r_2) r2 (r1<r2) ,如果它们恰好是相邻的两行(即 r 1 + 1 = r 2 r_1 + 1 = r_2 r1+1=r2 ),或它们之间的所有行都全为 0 0 0 ,那么第 r 1 r_1 r1 行的任意一个安全设备与第 r 2 r_2 r2 行的任意一个安全设备之间都有激光束。

因此,我们只需要统计每一行的安全设备个数,记为 next \textit{next} next ,以及上一个不全为 0 0 0 的行的安全设备个数,记为 p r e pre pre 。那么 pre × next \textit{pre} \times \textit{next} pre×next 即为激光束的个数。遍历所有的行,维护 p r e pre pre n e x t next next 并对 p r e × n e x t pre \times next pre×next 进行累加,即可得到激光束的总数量。

// cpp
class Solution {
public:int numberOfBeams(vector<string>& bank) {int pre = 0, ans = 0;for (const string& line : bank) {int next = count_if(line.begin(), line.end(), [](char ch) { return ch == '1'; });if (next) {ans += next * pre;pre = next;}}return ans;}
};
// java
class Solution {public int numberOfBeams(String[] bank) {int pre = 0, ans = 0;for (String line : bank) {int next = 0;for (char c : line.toCharArray()) if (c == '1') ++next;if (next != 0) {ans += pre * next;pre = next;}}return ans;}
}
// python
class Solution:def numberOfBeams(self, bank: List[str]) -> int:pre = ans = 0for line in bank:next = line.count("1")if next != 0:ans += pre * nextpre = nextreturn ans
// go
func numberOfBeams(bank []string) (ans int) {pre := 0for _, row := range bank {next := strings.Count(row, "1")if next != 0 {ans += pre * nextpre = next}}return
}

复杂度分析

  • 时间复杂度: O ( m n ) O(mn) O(mn)
  • 空间复杂度: O ( 1 ) O(1) O(1)
http://www.mmbaike.com/news/84426.html

相关文章:

  • 启航做网站好吗可以发广告的100个网站
  • 建设棋牌类网站要多少钱百度推广代理商利润
  • 广州网站制作企业seo做得比较好的企业案例
  • 网站怎么建设后台国外服务器免费ip地址
  • 成品图片的网站在哪里找外贸seo网站
  • 江西省建设监督网站电子网成人短期培训学校
  • 湖南免费网站建设服装市场调研报告
  • 天津哪里可以做网站企业管理软件
  • 南阳seo网站推广费用焦作关键词优化排名
  • 网上兼职做效果图网站有哪些百度网页入口
  • 池州做网站公司媒体发稿公司
  • 武昌网站建设品牌推广策划方案案例
  • 程序员做电商网站的公司好吗公司网站制作模板
  • 免费建站软件排行榜怎么提高百度关键词排名
  • 在哪个网站做图片视频带音乐朋友圈广告投放平台
  • 园区网互联及网站建设整站排名优化公司
  • 小程序跳转到网站个人小白如何做手游代理
  • 网站建设的三大原则网络营销方式哪些
  • 途牛旅行网站建设策划书排名软件下载
  • wordpress建站落后吗如何注册网站
  • 做一小说网站要花多钱网销怎么销售的
  • 企业网站 报价国家免费技能培训有哪些
  • 做数独的网站百度排名竞价
  • 做网站前台模板百度官网认证价格
  • 网站建设经典文章网络舆情监测
  • 怎么做自动发卡的网站快速排名点击工具
  • 百度推广帮做网站佛山百度关键词排名
  • 灰色 网站油烟机seo关键词
  • 设计素材网站推荐ppt百度大数据分析工具
  • 做试用网站的原理网站设计制作的服务怎么样