답안 #345415

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
345415 2021-01-07T09:19:54 Z pragmatist UFO (IZhO14_ufo) C++14
5 / 100
2000 ms 8904 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
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 376 KB Output is correct
2 Incorrect 1 ms 364 KB Output isn't correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Incorrect 7 ms 364 KB Output isn't correct
5 Incorrect 128 ms 748 KB Output isn't correct
6 Incorrect 180 ms 4332 KB Output isn't correct
7 Execution timed out 2058 ms 8172 KB Time limit exceeded
8 Execution timed out 2036 ms 8172 KB Time limit exceeded
9 Execution timed out 2027 ms 8172 KB Time limit exceeded
10 Execution timed out 2044 ms 8172 KB Time limit exceeded
11 Execution timed out 2021 ms 7880 KB Time limit exceeded
12 Execution timed out 2064 ms 8172 KB Time limit exceeded
13 Execution timed out 2084 ms 8876 KB Time limit exceeded
14 Execution timed out 2058 ms 7780 KB Time limit exceeded
15 Execution timed out 2083 ms 8092 KB Time limit exceeded
16 Execution timed out 2068 ms 7876 KB Time limit exceeded
17 Execution timed out 2048 ms 8904 KB Time limit exceeded
18 Execution timed out 2062 ms 7836 KB Time limit exceeded
19 Execution timed out 2063 ms 8172 KB Time limit exceeded
20 Execution timed out 2069 ms 8172 KB Time limit exceeded