【链接】 我是链接,点我呀:)

【题意】

在这里输入题意

【题解】

用pre[i][j]表示第i行前j列的和。
然后枚举连续座位的最左上点。
(有两种可能向右或向下k个。
则还需要处理出pre2[i][j]表示第j列前i行的和。
(都可以O(N^2)求出

然后pre[i][j+k-1]-pre[i][j-1]就是第i行第j列往右k个格子的空(或被占据)的格子数目了。

看看是不是符合要求就好。

往下扩展同理。

k==1的时候只要取向右一种就好。所以直接除个2

【代码】

#include <bits/stdc++.h>
using namespace std; const int N = 2e3; int n,m,k;
int a[N+10][N+10],pre[N+10][N+10];
char s[N+10][N+10]; int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
ios::sync_with_stdio(0),cin.tie(0);
cin >> n >> m >> k;
for (int i = 1;i <= n;i++){
cin >>(s[i]+1);
}
for (int i = 1;i <= n;i++)
for (int j = 1;j <= m;j++)
if (s[i][j]=='*')
a[i][j] = 1;
else
a[i][j] = 0;
for (int i = 1;i <= n;i++){
pre[i][0] = 0;
for (int j = 1;j <=m;j++)
pre[i][j] = pre[i][j-1]+a[i][j];
} long long ans = 0;
for (int i = 1;i <=n;i++)
for (int j = 1;j <= m;j++){
int l = j+k-1;
if (l <= m){
int temp = pre[i][l]-pre[i][j-1];
if (temp==0){
ans++;
}
}
} memset(pre,0,sizeof pre);
for (int j = 1;j <= m;j++){
pre[0][j] = 0;
for (int i = 1;i <= n;i++){
pre[i][j] = pre[i-1][j] + a[i][j];
}
} for (int i = 1;i <= n;i++)
for (int j = 1;j <= m;j++){
int l = i + k-1;
if (l <= n){
int temp = pre[l][j]-pre[i-1][j];
if (temp==0){
ans++;
}
}
}
if (k==1) ans/=2;
cout<<ans<<endl;
return 0;
}

【Codeforces Round #460 (Div. 2) C】 Seat Arrangements的更多相关文章

  1. 【Codeforces Round #460 (Div. 2) D】Substring

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 如果有环 ->直接输出-1 (拓扑排序如果存在某个点没有入过队列,说明有环->即入队的节点个数不等于n 否则. 说明可以 ...

  2. 【Codeforces Round #460 (Div. 2) B】 Perfect Number

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 直接暴力求出第k个perfect数字就好. 纯模拟. [代码] #include <bits/stdc++.h> #de ...

  3. 【Codeforces Round #460 (Div. 2) A】 Supermarket

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 就是让你求m*(ai/bb)的最小值 [代码] #include <bits/stdc++.h> #define dou ...

  4. 【Codeforces Round #432 (Div. 1) B】Arpa and a list of numbers

    [链接]h在这里写链接 [题意] 定义bad list是一个非空的.最大公约数为1的序列.给定一个序列,有两种操作:花费x将一个元素删除.花费y将一个元素加1,问你将这个序列变为good list所需 ...

  5. 【Codeforces Round #420 (Div. 2) C】Okabe and Boxes

    [题目链接]:http://codeforces.com/contest/821/problem/C [题意] 给你2*n个操作; 包括把1..n中的某一个数压入栈顶,以及把栈顶元素弹出; 保证压入和 ...

  6. 【Codeforces Round #420 (Div. 2) B】Okabe and Banana Trees

    [题目链接]:http://codeforces.com/contest/821/problem/B [题意] 当(x,y)这个坐标中,x和y都为整数的时候; 这个坐标上会有x+y根香蕉; 然后给你一 ...

  7. 【Codeforces Round #420 (Div. 2) A】Okabe and Future Gadget Laboratory

    [题目链接]:http://codeforces.com/contest/821/problem/A [题意] 给你一个n*n的数组; 然后问你,是不是每个位置(x,y); 都能找到一个同一行的元素q ...

  8. 【Codeforces Round #423 (Div. 2) C】String Reconstruction

    [Link]:http://codeforces.com/contest/828/problem/C [Description] 让你猜一个字符串原来是什么; 你知道这个字符串的n个子串; 且知道第i ...

  9. 【Codeforces Round #423 (Div. 2) B】Black Square

    [Link]:http://codeforces.com/contest/828/problem/B [Description] 给你一个n*m的格子; 里面包含B和W两种颜色的格子; 让你在这个格子 ...

随机推荐

  1. BNUOJ34980方(芳)格(哥)取数(好坑)

    方(芳)格(哥)取数 Time Limit: 3000ms Memory Limit: 65536KB 64-bit integer IO format: %lld      Java class n ...

  2. Android体验高扩展艺术般的适配器

    前言 本篇文章带大家体验一下一种具有扩展性的适配器写法. 这个适配器主要用于Item有多种的情况下.当然仅仅有一种类型也是适用的 实现 毫无疑问我们要继承BaseAdapter,重写getCount, ...

  3. zoj 3820 Building Fire Stations (二分+树的直径)

    Building Fire Stations Time Limit: 5 Seconds      Memory Limit: 131072 KB      Special Judge Marjar ...

  4. Linux 经常使用快捷键

    桌面下: Alt+F5   取消最大化窗体 Alt+F9   最小化窗体  Alt+F10  最大化窗体  Alt+空格 打开窗体的控制菜单 (点击窗体左上角图标出现的菜单)     ctl+r   ...

  5. Java 类和对象7

    创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它. public class sanjiaoxing { private double a; private double b; pri ...

  6. View的双击动作

    有时在android中需要为某一控件设置双击监听,实现也挺简单,自己动手吧.编码永远不是问题,思路才是最重要. public class DoubleClickDemo extends Activit ...

  7. AppManager类,管理Activity和App

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); / ...

  8. 位运算与bitset

    &运算  将两个数转化为二进制后,对应的位置上相同即取,通常取1,所以&通常情况下可以用来枚举子集 设x为表示集合的整数,那么这个整数有如下性质: x的子集整数y在数值上不会比x大.因 ...

  9. Mac or windows eclipse配置tomcat

    1.选择window --> Preferences 首选项 2.选择server --> Runtime Environements --> Add 3.选择对应的tomcat版本 ...

  10. The view 'Index' or its master was not found or no view engine supports the

    ASP.net  MVC 5  WebApi部署IIS提示: 未找到视图“索引”或其母版视图,或没有视图引擎支持搜索的位置.搜索了以下位置: 其他设置一切正常 这种情况很有可能是,1.部署的路径中空格 ...