20
5 5
#####
#...#
#...#
#....
.....
3 3
###
###
###
5 5
#####
#####
#####
#####
#####
<27002 bytes omitted>
系统信息
Killed: Segmentation fault
编号 | 题目 | 状态 | 分数 | 总时间 | 内存 | 代码 / 答案文件 | 提交者 | 提交时间 |
---|---|---|---|---|---|---|---|---|
#47186 | #1010. J. 团队配置,新奇的面试题 | Runtime Error | 0 | 391 ms | 460 K | C++ 11 / 1.2 K | 计试001陈子鹏 | 2021-02-20 16:24:44 |
#include <iostream>
#include <cmath>
using namespace std;
typedef long long LL;
const int INF = 0x3f3f3f3f;
const LL LINF = 0x3f3f3f3f3f3f3f3f;
bool hill[100][100], flwr[100][100];
int main() {
// freopen("input.in", "r", stdin);
int T;
scanf("%d", &T);
while (T--) {
int N, M, n, m;
char c;
scanf("%d%d", &N, &M);
for (int i = 0; i < N; i++) {
cin.get();
for (int j = 0; j < M; j++) {
c = cin.get();
if (c == '#')
hill[i][j] = 1;
if (c == '.')
hill[i][j] = 0;
}
}
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++) {
cin.get();
for (int j = 0; j < m; j++) {
c = cin.get();
if (c == '#')
flwr[i][j] = 1;
if (c == '.')
flwr[i][j] = 0;
}
}
int a = (n - 1) / 2;
int b = (m - 1) / 2;
int ans = 0;
for (int i = 0; i < N; i++) {
for (int j = 0; j < M; j++) {
bool match = 1;
for (int u = -a; u <= a; u++) {
for (int v = -b; v <= b; v++) {
if (i + u >= 0 && i + u < N && j + v >= 0 && j + v < M) {
if (hill[i + u][j + v] && flwr[a + u][b + v]) {
match = 0;
goto BREAK;
}
}
}
}
BREAK:
ans += match;
}
}
printf("%d\n", ans);
}
return 0;
}