Submission #345503

#TimeUsernameProblemLanguageResultExecution timeMemory
345503pragmatistUFO (IZhO14_ufo)C++14
35 / 100
2092 ms11556 KiB
// 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(cnt>r) break; if(a[i][x]>=y) { if(cnt<=r) { a[i][x]--; cnt++; } } } } if(tp=='W') { for(int i=1; i<=m; ++i) { if(cnt>r) break; if(a[x][i]>=y) { if(cnt<=r) { a[x][i]--; cnt++; } } } } if(tp=='S') { for(int i=n; i>=1; --i) { if(cnt>r) break; if(a[i][x]>=y) { if(cnt<=r) { a[i][x]--; cnt++; } } } } if(tp=='E') { for(int i=m; i>=1; --i) { if(cnt>r) break; 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 timeMemoryGrader output
Fetching results...