方格稿纸(二维前缀和)
题目描述
小 y 终于在小学学会了一些字、词、句子,会写一点作文了。某一天,小 y 买了一张方格稿纸来写作文,稿纸是 行 列的,形状如下所示(图中 ):
某天小 y 的邻居 小 x 来 小 y 家玩,无聊地用黑墨水笔把 小 y 新买的方格稿纸涂黑了很多格子。每个格子不是完全黑色就是完全白色,如下图所示。
小 y 不能责怪小 x。作文写不成了,他也觉得很无聊,就开始数里面有多少“魔幻方阵”。如果稿纸中一个 的正方形区域满足以下两个条件,那么它就是魔幻方阵:
(1) 黑白格子的数量差不能超过 ;
(2) 不能小于 。
上图染色后的方格稿纸共有 个魔幻方阵( 个 的魔幻方阵 , 个 的魔幻方阵)。
现在,请你帮助小 y 编程计算被染色的稿纸里面有多少个魔幻方阵。
关于二维前缀和建议参考二维前缀和!_Banzed的博客-CSDN博客_二维前缀和
#include <iostream>
#include <math.h>
using namespace std;
int n,m,sum;
int a[310][310];
int dp[310][310];
int main() {
cin>>n>>m;
for (int i=1;i<=n;i++)
for (int j=1;j<=m;j++) {
cin>>a[i][j];
dp[i][j] = dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1]+a[i][j];//动态转移式方程
}
int ans1,ans2;
for (int k=2;k<=max(n,m);k++) {
ans1=ans2=0;
for (int i=1;i<=n-k+1;i++) {
for (int j=1;j<=m-k+1;j++) {
int x=i+k-1,
y=j+k-1;
ans1 = dp[x][y]-dp[i-1][y]-dp[x][j-1]+dp[i-1][j-1];
ans2 = k*k-ans1;
if (abs(ans1-ans2) <= 1)
sum++;
}
}
}
cout<<sum;
return 0;
}
方格稿纸(二维前缀和)相关推荐
- BZOJ4972 八月月赛 Problem B 小Q的方格纸 二维前缀和
欢迎访问~原文出处--博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ4972 八月月赛Problem B 题目概括 一个矩阵,一坨询问,问矩阵中一个特定方向的等腰直角三角 ...
- 牛客 - 捡金币(思维+二维前缀和+构造)
题目链接:点击查看 题目大意:给出一个n*m的矩阵,每个方格都有一个权值,现在给出q次询问,每次询问的格式是x,y,k,问与点(x,y)的曼哈顿距离不超过k的方格内的所有权值之和 题目分析:首先这个题 ...
- Monitor CodeForces - 846D ——二维前缀和
Recently Luba bought a monitor. Mon itor is a rectangular matrix of size n × m. But then she started ...
- 二维前缀和+差分 HDU6514 Monitor
Monitor [ HDU - 6514 ] 题目大意:给你个n×m的区域,每个区域被选中标记为1,没被选中标记为0,然后给一些标记的区域,查询若干个区域问是否有0的 一道二维前缀和的题目,想通没什么 ...
- 牛妹吃豆子(二维前缀和模板,修改+求和)
调了半天忘了要求两次前缀和了. 先对前缀和数组进行修改, 第一次求前缀和得到的是修改后的原矩阵,再求一次前缀和得到二维前缀和,然后根据容斥定理求区间的二维前缀和即可 #include<iostr ...
- 【每日DP】day3 P1387 最大正方形(奇怪的DP增加了 / 二维前缀和)难度⭐⭐★
奇怪的DP增加了 这道题,刚看见真是一脸懵逼,看了题解才明白. 本题中神奇的转移方程是: f[i][j]=min(min(f[i][j−1],f[i−1][j]),f[i−1][j−1])+1f[i] ...
- 《算法竞赛进阶指南》打卡-基本算法-AcWing 99. 激光炸弹:二维前缀和
文章目录 题目解答 题目来源 题目解答 来源:acwing 分析: 前缀和习惯从下标1开始. 注意:本题是不包含边界的.什么意思? 以样例为例,这里有两个点,分别在(0,0) 和(1,1),且攻击的矩 ...
- 海啸(二维前缀和/二维树状数组)
链接:https://ac.nowcoder.com/acm/problem/21862 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 中石油训练赛 - Block(二维前缀和+思维)
题目描述 Alice得到了一张由n×m个黑白像素点组成的图片,她想要压缩这张图片.压缩图片的过程如下: 1.首先,选择一个正整数k(k>1),将图片划分成若干个k×k的小块.如果n,m不能被k整 ...
- leetcode 304. Range Sum Query 2D - Immutable |304. 二维区域和检索 - 矩阵不可变(二维前缀和问题)
题目 https://leetcode.com/problems/range-sum-query-2d-immutable/ 题解 本题是 medium 难度,二维前缀和问题.相似题目有: Easy: ...
最新文章
- Object Detection+目标检测概述及其常见模型总结
- 过滤驱动加密文件(代码)
- Machine Learning实验3】SoftMax regression
- boost::hana::lift用法的测试程序
- centos 忘记root密码_Linux忘记root密码解决方案
- 智能家居 (2) ——设计模式的引入
- REST + Spring Security会话问题
- iphone固件降级_我在iPhone上装了个安卓
- 厉害了!中关村软件园人工智能军团有料有看点
- WCF BasicHttpBinding 安全解析(1)BasicHttpBinding基本配置
- Maya vray XYZ皮肤贴图材质节点连接
- 计算机无法打开浏览器,win7电脑打开ie浏览器被提示“该页无法显示”怎么解决...
- 万年历c语言代码单链表,万年历的C语言实现
- win8更改计算机锁屏时间,在win8系统中设置自动锁屏功能的方法
- html网页漂浮广告原理js,JS实现弹性漂浮效果的广告代码
- 百度网盘批量上传文件工具
- 触动精灵贝塞尔曲线Bezier Curve
- 不同类型的物联网产品、物联网产品的优势
- 被谢耳朵一直嘲笑的MIT,这次发明了黑镜中的“恐怖机器”
- R语言----制作数据分布图(直方图+概率密度曲线)