【土】秘法地图

「土」秘法地震

https://ac.nowcoder.com/acm/problem/53676

//核心算法二维前缀和,其实在做这道题的同时可以去看一下激光炸弹,两者都是用的二维前缀和;
// 二维前缀和的解释我就不过多赘述了;
#include<iostream>
using namespace std;
#define N 10006
int a[N][N],sum[N][N];
int main(){
int m,n,k;
char op;
cin>>m>>n>>k;
getchar();
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
cin>>op;
a[i][j]=op-'0';//将字符转换为整数存入矩阵;
}
}
for(int i=0;i<=m;i++){
for(int j=0;j<=n;j++){
sum[i][j]=a[i][j]+sum[i][j-1]+sum[i-1][j]-sum[i-1][j-1];//二维前缀和处理;
}
}
int cnt=0;
for(int i=1;i<=m-k+1;i++){
for(int j=1;j<=n-k+1;j++){//因为从1开始所以结束要加1;
int temp=sum[i-1][j-1]+sum[i+k-1][j+k-1]-sum[i+k-1][j-1]-sum[i-1][j+k-1];//求区间之内的和
if(temp!=0)cnt++;//只要不为0就代表其中有建筑;
}
}
cout<<cnt<<endl;
return 0;
}</iostream>

全部评论

相关推荐

牛客383479252号:9,2学生暑期实习失利开始投小厂,给这群人整自信了
点赞 评论 收藏
分享
牛客773130651号:巨佬,简历模板换成上下的,左右的很烦,hr看着不爽。。。科大随便乱杀,建议能保研就保研,不行也得考一下 ,985硕去干算法,比开发强多了。开发许多双非都能搞,学历优势用不上,算法有门槛
点赞 评论 收藏
分享
学java时间比较短不到三个月,基本的技术栈都过了一遍就是都不太深,有个小项目。是继续找实习还是沉淀准备秋招呢?找实习的话会花很多时间在八股,放弃的话又怕秋招简历太难看。有无大佬支招
今天java了吗:1.一定要找实习,实习不一定要去,但是找实习过程中的面试经验和心态经验才是最重要的 2.八股本来就是大头,甚至比项目重要 3.这个时间段也是面试比较多的阶段,可以抓住机会锻炼。面试才会发现自己的不足,感觉自己会了和能给面试官娓娓道来是两码事
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务