BZOJ3207【暴力】

来源:互联网 发布:夏季联赛数据 编辑:程序博客网 时间:2024/05/01 23:29
/* I will wait for you */    #include <cstdio>  #include <cstdlib>  #include <cstring>  #include <cmath>  #include <ctime>  #include <algorithm>  #include <iostream>  #include <fstream>  #include <vector>  #include <queue>  #include <deque>  #include <set>  #include <map>  #include <string>  #define make make_pair  #define fi first  #define se second    using namespace std;    typedef long long ll;  typedef unsigned long long ull;  typedef pair<int, int> pii;    const int maxn = 710;  const int maxm = 61;  const int maxs = 26;  const int inf = 0x3f3f3f3f;  const int P = 1000000007;  const double error = 1e-9;    inline ll read() {      ll x = 0, f = 1; char ch = getchar();      while (ch < '0' || ch > '9') f = (ch == '-' ? -1 : 1), ch = getchar();      while (ch >= '0' && ch <= '9')    x = x * 10 + ch - '0', ch = getchar();      return x * f;  } int ans,del[maxn][maxn], hi[maxn][maxn], f[maxn][maxn];int dx[4] = {0, 0, 1, -1}, dy[4] = {1, -1, 0, 0};void dfs(int x, int y) {if (f[x][y] == -1){f[x][y] = 0;for (int i = 0; i < 4; i++)for (int j = 0; j < 4; j++) {int nx = x + dx[i];int ny = y + dy[i];if(del[nx][ny] != -1 && hi[x][y] > hi[nx][ny]) {dfs(nx,ny);f[x][y] = max(f[x][y], f[nx][ny]);}}f[x][y]++;}ans = max(ans, f[x][y]);}int main() {memset(del, -1, sizeof del);int n = read();for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++)hi[i][j] = read(), del[i][j] = 0;int m = read();while (m--) {char s[10]; scanf("%s", s);if (s[0] == 'C') {int a = read(), b = read(), c = read();hi[a][b] = c;}if (s[0] == 'S') {int a = read(), b = read();int c = read(), d = read();for (int i = a; i <= c; i++)for (int j = b; j <= d; j++)del[i][j] = -1;}if (s[0] == 'B') {int a = read(), b = read();int c = read(), d = read();for (int i = a; i <= c; i++)for (int j = b; j <= d; j++)del[i][j] = 0;}if (s[0] == 'Q') {ans = -1;memset(f, -1, sizeof f);for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++)if (f[i][j] == -1 && del[i][j] != -1)dfs(i,j);printf("%d\n", ans);}}return 0;}

0 0
原创粉丝点击