1 条题解
-
1
#include<bits/stdc++.h> using namespace std; const int N = 2011; int s[N][N], R[N][N], L[N][N], U[N][N], D[N][N]; int main() { int h, w; cin >> h >> w; for (int i = 1; i <= h; i++) { for (int j = 1; j <= w; j++) { char c; cin >> c; s[i][j] = (c == '#'); } } for (int i = 1; i <= h; i++) { for (int j = 1; j <= w; j++) { if (s[i][j] == 1) continue; R[i][j] = R[i][j-1] + 1; D[i][j] = D[i-1][j] + 1; } } for (int i = h; i >= 1; i--) { for (int j = w; j >= 1; j--) { if (s[i][j] == 1) continue; L[i][j] = L[i][j+1] + 1; U[i][j] = U[i+1][j] + 1; } } int ans = 0; for (int i = 1; i <= h; i++) { for (int j = 1; j <= w; j++) { int t = L[i][j] + R[i][j] + U[i][j] + D[i][j] - 3; ans = max(ans, t); } } cout << ans; return 0; }
- 1
信息
- ID
- 11670
- 时间
- 2000ms
- 内存
- 1024MiB
- 难度
- 9
- 标签
- 递交数
- 83
- 已通过
- 9
- 上传者