답안 #345408

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
345408 2021-01-07T09:15:36 Z pragmatist UFO (IZhO14_ufo) C++14
5 / 100
2000 ms 6088 KB
// turmak-_-
#include<bits/stdc++.h>

#define all(v) v.begin(),v.end()
#define sz(a) a.size()
#define nl "\n"
#define IOI return 0;
#define pb push_back
#define ppb pop_back()
#define ll long long
#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 ll MOD = (ll)998244353;
const ll INF = (ll)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;
}
int 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 364 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 6 ms 492 KB Output isn't correct
5 Incorrect 117 ms 1388 KB Output isn't correct
6 Incorrect 153 ms 3700 KB Output isn't correct
7 Execution timed out 2077 ms 5484 KB Time limit exceeded
8 Execution timed out 2083 ms 5612 KB Time limit exceeded
9 Execution timed out 2067 ms 5612 KB Time limit exceeded
10 Execution timed out 2036 ms 5612 KB Time limit exceeded
11 Execution timed out 2077 ms 5484 KB Time limit exceeded
12 Execution timed out 2103 ms 5612 KB Time limit exceeded
13 Execution timed out 2054 ms 6088 KB Time limit exceeded
14 Execution timed out 2084 ms 5484 KB Time limit exceeded
15 Execution timed out 2085 ms 5668 KB Time limit exceeded
16 Execution timed out 2084 ms 5500 KB Time limit exceeded
17 Execution timed out 2055 ms 5868 KB Time limit exceeded
18 Execution timed out 2053 ms 5696 KB Time limit exceeded
19 Execution timed out 2005 ms 5612 KB Time limit exceeded
20 Execution timed out 2065 ms 5612 KB Time limit exceeded