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

建站工具箱网站模板哪家好

建站工具箱,网站模板哪家好,手机论坛网站,网站换空间 site题目大意:给定一个 NM 的矩阵 A,请你统计有多少个子矩阵 (最小11,最大NM) 满足子矩阵中所有数的和不超过给定的整数 K? 前言:这题很容易想到二维前缀和优化,然后枚举子矩阵,但这样时间复杂度为…

题目大意:给定一个 N×M 的矩阵 A,请你统计有多少个子矩阵 (最小1×1,最大N×M) 满足子矩阵中所有数的和不超过给定的整数 K?

前言:这题很容易想到二维前缀和优化,然后枚举子矩阵,但这样时间复杂度为O(N^{4}),而题中N最大500,大概就是1.25*10^{8},但我们一般要把操作次数维护到10^{7}~10^{8}之间为最佳!但这样以及能过70%的数据了QWQ

解题思路:(双指针+一位前缀和)
我们整体的优化思路是:枚举子矩阵的上下边界,这是双层循环,然后在每个固定的边界里,用左右指针l,r来查找状态下满足的子矩阵个数,这么说可能比较抽象,下面用通俗一些的话来解释吧!

1.首先,我们定义了上边界i,下边界j,可以理解为一个我们在找子矩阵的时候,我们先把它的上下给定住!比如上边界为1,下边界为N,那这个情况下其实就是原矩阵(N×M)的上边界和下边界。

2.但是!虽然上下边界定了,但左右还没定呀,所以,这个时候就要引入今天的主角“双指针”登场了,我们定义左右指针L,R(为了方便看,用大写表示),前面定了上下边界,我们再用L和R来定左右,就可以定一个矩阵了。(大脑里面应该能想想出来,不行的话用笔画一下)

3.题中要求的是子矩阵所有数的和<=K,而一开始L=R=1,我们是要遍历R到右端点,并且再这个过程中计算这个围成的矩阵和是否已经超过了K,超过了,那么就要让L++,并且对于每一个移动的R,应该都是可以固定一个L是其矩阵刚好<=K,那么此时L与R围成的矩阵的恰好满足 ,再次强调:我们这里是先定的R,然后对于每一个R都能找到一段恰好<=K的区间,然后这个LR围成的区间中,我们找的子区间是以R为有边界(因为我们是遍历的R),此时若以L右边的元素为左边界,比如L+1,那么也肯定满足,比如L=0,中间有个1,R=2,那么对于[L,R]区间,我们此次计入的子区间就是012,12,2;

4.关于一些计算的,就是利用一维前缀和,并不难理解,结合代码直接看应该更易理解,就不在这里阐述了,把第三条看明白基本此题的思路已经很明确了

#include<bits/stdc++.h>
using namespace std;
using ll=long long;const int N = 505;int n,m,k,a[N][N];
ll ans;int main()
{ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n>>m>>k;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[i][j];a[i][j]+=a[i-1][j];//第j列的前缀和}}for(int i=1;i<=n;i++)//上边界{for(int j=i;j<=n;j++)//下边界{for(int l=1,r=1,sum=0;r<=m;r++)//右指针的移动{sum+=a[j][r]-a[i-1][r];//j表示下边界,i表示上边界,r就是当前的列while(sum>k){sum-=a[j][l]-a[i-1][l]; l++; }ans+=r-l+1;}}}cout<<ans;return 0;
}

http://www.dtcms.com/wzjs/175366.html

相关文章:

  • 日本人做的中文网站阿里域名注册网站
  • 商标查询小程序唐山seo排名
  • 营销网站建设 公司怎么样把自己的产品网上推广
  • 网站怎样做全国地区推广济南今日头条最新消息
  • php网站开发实例源码站长工具怎么关掉
  • 网站无障碍建设报告关键词优化资讯
  • 网站地图制作方法宁德市中医院
  • 精品课程网站怎么做seo营销的概念
  • 做淘宝券网站重庆森林经典台词图片
  • 怎样把网站做的好看网站查询ip
  • 做市场调查分析的网站怎么下载需要会员的网站视频
  • 上海网站建设觉策动力网站推广经验
  • 自己做的网站在浏览器上显示不安全深圳百度关键词
  • 商务网站规划与建设企业网站建设多少钱
  • 怎么登陆建设u盾网站搜索引擎推广方式
  • 网站说服力 营销型网站策划郑州seo网站关键词优化
  • 重庆响应式网站方案电脑培训速成班多少钱
  • 网站不备案支付宝接口北京百度搜索排名优化
  • 门户网站建设方案模板百度网站优化软件
  • 商城网站 个人备案营销推广的主要方式
  • 2万块建一个网站贵吗sem是什么意思
  • wordpress如何绑定多个域名seo建站优化
  • ipad做电影网站seo排名关键词点击
  • wordpress作者关注功能怎么实现什么是seo技术
  • 婚纱网网站建设目的及功能定位搜狗seo排名软件
  • 团结湖网站建设网络营销的现状
  • 第三方做公司网站免费二级域名分发网站源码
  • 南宁网站建设超博网络网站建设公司排名
  • 最新被百度收录的网站百度一下你就知道官网网址
  • 淘宝上做网站 源代码怎么给你win优化大师有用吗