洛谷 P3654. First Step (ファーストステップ)
原题链接
中等
作者:
我是java同学
,
2023-12-11 20:58:23
,
所有人可见
,
阅读 54
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int n, m, cnt;
char g[N][N];
int main() {
cin >> n >> m >> cnt;
for (int i = 0; i < n; i ++ )
cin >> g[i];
int res = 0;
for (int i = 0; i < n; i ++ )
for (int j = 0; j < m; j ++ ) {
if (g[i][j] == '.') {
//右
int s = 1;
for (int k = j + 1; k < m; k ++ ) {
if (g[i][k] == '.') s ++ ;
else break;
}
if (s >= cnt) res ++ ;
//cout << i << ' ' << j << ' ' << s << ' ' ;
//下
if (cnt == 1) continue;//k=1时只算一个方向
s = 1;
for (int k = i + 1; k < n; k ++ ) {
if (g[k][j] == '.') s ++ ;
else break;
}
if (s >= cnt) res ++ ;
//cout << s << ' ' << res << endl;
}
}
//if (cnt == 1) res *= 2;
cout << res << endl;
return 0;
}