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

如何加强省市网站建设wordpress多说加载慢

如何加强省市网站建设,wordpress多说加载慢,怎样建设网站是什么意思,龙岩app设计题目链接 Leetcode.1139 最大的以 1 为边界的正方形 Rating : 1744 题目描述 给你一个由若干 0 和 1 组成的二维网格 grid,请你找出边界全部由 1 组成的最大 正方形 子网格,并返回该子网格中的元素数量。 如果不存在,则返回 0。…

题目链接

Leetcode.1139 最大的以 1 为边界的正方形 Rating : 1744

题目描述

给你一个由若干 0 和 1 组成的二维网格 grid,请你找出边界全部由 1 组成的最大 正方形 子网格,并返回该子网格中的元素数量。

如果不存在,则返回 0。

示例 1:

输入:grid = [[1,1,1],[1,0,1],[1,1,1]]
输出:9

示例 2:

输入:grid = [[1,1,0,0]]
输出:1

提示:

  • 1<=grid.length<=1001 <= grid.length <= 1001<=grid.length<=100
  • 1<=grid[0].length<=1001 <= grid[0].length <= 1001<=grid[0].length<=100
  • grid[i][j]为 0 或 1

分析:

使用 dp 求解,我们定义 f(i,j,0)和f(i,j,1)f(i,j,0)和f(i,j,1)f(i,j,0)f(i,j,1)分别为以点 (i,j)结尾,向左 和 向上的连续 1的个数。

f(i,j,0)>0和f(i,j,1)>0f(i,j,0) > 0和f(i,j,1) > 0f(i,j,0)>0f(i,j,1)>0 的情况下,我们取 d=min(f(i,j,0),f(i,j,1))d = min(f(i,j,0),f(i,j,1))d=min(f(i,j,0),f(i,j,1))

遍历kkk (0<=k<=d)(0<=k<=d)(0<=k<=d),判断 f(i−k+1,j,0)>=k和f(i,j−k+1,1)>=kf(i-k+1,j,0) >= k 和 f(i,j-k+1,1) >= kf(ik+1,j,0)>=kf(i,jk+1,1)>=k,如果条件成立,说明可以构成一个最后一点是 (i,j),边长为 k的正方形。

时间复杂度:O(m∗n∗min(m∗n))O(m*n*min(m*n))O(mnmin(mn))

C++代码:

class Solution {
public:int largest1BorderedSquare(vector<vector<int>>& grid) {int m = grid.size(),n = grid[0].size();int f[m+1][n+1][2];memset(f,0,sizeof f);int ans = 0;for(int i = 1;i <= m;i++){for(int j = 1;j <= n;j++){//为1就记录if(grid[i-1][j-1]){f[i][j][0] = 1 + (j - 1 >= 1 ? f[i][j-1][0] : 0);f[i][j][1] = 1 + (i - 1 >= 1 ? f[i-1][j][1] : 0);}if(f[i][j][0] > 0 && f[i][j][1] > 0){int d = min(f[i][j][0],f[i][j][1]);//倒序判断能构成正方形的最大边长for(int k = d;k >= 0;k--){if(i-k+1 >= 1 && j-k+1 >= 1 && f[i-k+1][j][0] >= k && f[i][j-k+1][1] >= k){ans = max(ans,k*k);break;}}}}}return ans;}
};

Java代码:

class Solution {public int largest1BorderedSquare(int[][] grid) {int m = grid.length,n = grid[0].length;int[][][] f = new int[m+1][n+1][2];int ans = 0;for(int i = 1;i <= m;i++){for(int j = 1;j <= n;j++){if(grid[i-1][j-1]==1){f[i][j][0] = 1 + (j - 1 >= 1 ? f[i][j-1][0] : 0);f[i][j][1] = 1 + (i - 1 >= 1 ? f[i-1][j][1] : 0);}if(f[i][j][0] > 0 && f[i][j][1] > 0){int d = Math.min(f[i][j][0],f[i][j][1]);for(int k = d;k >= 0;k--){if(i-k+1 >= 1 && j-k+1 >= 1 && f[i-k+1][j][0] >= k && f[i][j-k+1][1] >= k){ans = Math.max(ans,k*k);break;}}}}}return ans;}
}
http://www.yayakq.cn/news/263812/

相关文章:

  • 网站后台html模板下载电视网站后台管理系统漏洞
  • 在哪找人做网站网站浏览器
  • 网站建设综合实训案例wordpress 描述设为标题
  • 公司手机网站建设制作论坛做网站
  • 网站内容排版设计模板建设银行贵金属网站
  • 专业机票网站建设网站如何做视频链接
  • 网站建设 xplogo投注类网站怎么做自动软件
  • 宣城网站 建设软件网站开发评估
  • 课程网站建设技术企业网站优化搜行者seo
  • 数据交易网站源码仿网站教程
  • 网站seo自己怎么做全球搜索大全
  • 社交网站解决方案河南郑州网站建设公司
  • 2008 iis 添加 网站 权限设置网站生成app免费
  • 建设网站简单教程冒险岛2做乐谱网站
  • 网站加速器下载html代码用什么软件运行
  • 涿州做网站的自媒体包括哪些平台
  • 网站默认后台登陆怎么在凡科做自己网站
  • 网上做中考题的网站晋城网站建设网站
  • 什么是网站改版wordpress简体中文版
  • .net网站开发框架深圳去聋哑做义工申请网站
  • 做店铺首页的网站网站建设公司怎样做账
  • PHP做的彩票网站好用吗网站流量 次
  • 怎么查看网站备案进度孝感注册公司
  • 建站公司专业团队平面设计培训费一般多少钱
  • 网站排名怎么做 知乎dz论坛网站源码
  • 建设贷款网站哪家好制作网站的成本规划
  • 电商扶贫网站建设厦门谷歌seo公司
  • 广厦建设集团官方网站python做网站的优势
  • 韶关市住房和城乡建设管理局网站百度自然排名网站的logo怎么做
  • 做网站需要多少钱知乎陕西省住房建设部官方网站一建