Submission #345500

# Submission time Handle Problem Language Result Execution time Memory
345500 2021-01-07T13:38:48 Z pragmatist UFO (IZhO14_ufo) C++14
30 / 100
2000 ms 10988 KB
// turmak-_-
#include<bits/stdc++.h>

#define all(v) v.begin(),v.end()
#define int long long
#define sz(a) a.size()
#define nl "\n"
#define IOI return 0;
#define pb push_back
#define ppb pop_back()
#define ull unsigned long long
#define ld long double
#define IOS ios_base :: sync_with_stdio(NULL); cin.tie(0); cout.tie(0);
#define pii pair<int,int>
#define X first
#define Y second


using namespace std;
const int N = (int)1e5 + 7 ;
const int MOD = (int)998244353;
const int INF = (int)1e18 + 7;
const int inf = (int)1e9 + 7;

pii dx[] = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}};


void solve() {
    int n,m,r,k,p;
    cin>>n>>m>>r>>k>>p;
    int a[n+1][m+1];
    for(int i=1; i<=n; ++i) {
    	for(int j=1; j<=m; ++j) {
    		cin>>a[i][j];
    	}
    }
    while(k--) {
    	char tp;

    	int x,y;
    	cin>>tp>>x>>y;
    	int cnt = 1;
    	if(tp=='N') {
    		for(int i=1; i<=n; ++i) {
    			if(a[i][x]>=y) {
    				if(cnt<=r) {
    					a[i][x]--;
    					cnt++;
    				}
    			}
    		}
    	}
    	if(tp=='W') {
    		for(int i=1; i<=m; ++i) {
    			if(a[x][i]>=y) {
    				if(cnt<=r) {
    					a[x][i]--;
    					cnt++;
    				}

    			}
    		}
    	}
    	if(tp=='S') {
    		for(int i=n; i>=1; --i) {
    			if(a[i][x]>=y) {
					if(cnt<=r) {
    					a[i][x]--;
    					cnt++;
    				}
    			}
    		}
    	}
    	if(tp=='E') {
    		for(int i=m; i>=1; --i) {
    			if(a[x][i]>=y) {
    				if(cnt<=r) {
    					a[x][i]--;
    					cnt++;
    				}
    			}
    		}
    	}
    }
    int mx = 0;
    
    for(int i=1; i<=n-p+1; ++i) {
    	for(int j=1; j<=m-p+1; ++j) {
    		int x = i, y = j, sum=0;
    		for(int ii = x; ii<=x+p-1; ++ii) {
    			for(int jj = y; jj<=y+p-1; ++jj) {
    				sum+=a[ii][jj];
    			}
    		}
    		mx = max(mx, sum);
    	}
    }
    cout<<mx<<nl;
}
signed main() {
    IOS
    srand(time(0));
    //freopen("cinema.in", "r", stdin);
    //freopen("cinema.out", "w", stdout);
    int tt=1;
    //cin>>tt;
    while(tt--) {
        solve();
    }
    IOI
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 9 ms 492 KB Output is correct
5 Correct 245 ms 1388 KB Output is correct
6 Correct 288 ms 5996 KB Output is correct
7 Execution timed out 2061 ms 10652 KB Time limit exceeded
8 Execution timed out 2073 ms 10092 KB Time limit exceeded
9 Execution timed out 2065 ms 9964 KB Time limit exceeded
10 Execution timed out 2084 ms 9964 KB Time limit exceeded
11 Execution timed out 2075 ms 9756 KB Time limit exceeded
12 Execution timed out 2064 ms 9836 KB Time limit exceeded
13 Execution timed out 2021 ms 10604 KB Time limit exceeded
14 Execution timed out 2079 ms 9356 KB Time limit exceeded
15 Execution timed out 2078 ms 9580 KB Time limit exceeded
16 Execution timed out 2077 ms 9708 KB Time limit exceeded
17 Execution timed out 2035 ms 10988 KB Time limit exceeded
18 Execution timed out 2070 ms 9324 KB Time limit exceeded
19 Execution timed out 2083 ms 9588 KB Time limit exceeded
20 Execution timed out 2053 ms 9476 KB Time limit exceeded