답안 #39004

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
39004 2018-01-09T04:47:09 Z RockyB UFO (IZhO14_ufo) C++14
10 / 100
2000 ms 10564 KB
/// In The Name Of God

#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,sse3,sse4,popcnt,abm,mmx")

#include <bits/stdc++.h>

#define f first
#define s second

#define pb push_back
#define pp pop_back
#define mp make_pair

#define sz(x) (int)x.size()
#define sqr(x) ((x) * 1ll * (x))
#define all(x) x.begin(), x.end()

#define Kazakhstan ios_base :: sync_with_stdio(0), cin.tie(0), cout.tie(0);

#define nl '\n'
#define ioi exit(0);

typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;

const int N = (int)5e5 + 7, inf = (int)1e9 + 7, mod = (int)1e9 + 7;
const ll linf = (ll)1e18 + 7;
const int dx[] = {-1, 0, 1, 0, 1, -1, -1, 1}, dy[] = {0, 1, 0, -1, 1, -1, 1, -1};

using namespace std;

int n, m, r, k, p;
vector < vector <int> > a;
int get(int x1, int y1) {
	int res = 0;
	int x2 = x1 + p - 1, y2 = y1 + p - 1;
	for (int i = x1; i <= x2; i++) {
		for (int j = y1; j <= y2; j++) {
			res += a[i][j];
		}
	}
	return res;
}
int main() {
	#ifdef IOI2018
		freopen ("in.txt", "r", stdin);
	#endif
	scanf ("%d%d%d%d%d", &n, &m, &r, &k, &p);
	a.resize(n + 1);
	for (int i = 1; i <= n; i++) {
		a[i].resize(m + 1);
		for (int j = 1; j <= m; j++) {
			scanf ("%d", &a[i][j]);
		}
	}
	for (int t = 1; t <= k; t++) {
		char c;
		int x, y;
		scanf ("\n%c %d %d", &c, &x, &y);
		if (c == 'N') {
			for (int i = n, done = 0; i >= 1 && done < r; i--) {
				if (a[i][x] >= y) a[i][x]--, done++;
			}
		}
		else if (c == 'S') {
			for (int i = 1, done = 0; i <= n && done < r; i++) {
				if (a[i][x] >= y) a[i][y]--, done++;
			}
		}
		else if (c == 'E') {
			for (int i = 1, done = 0; i <= m && done < r; i++) {
				if (a[x][i] >= y) a[x][i]--, done++;
			}
		}
		else {
			for (int i = m, done = 0; i >= 1 && done < r; i--) {
				if (a[x][i] >= y) a[x][i]--, done++;
			}
		}
	}
	int ans = 0;
	for (int i = 1; i <= n - p + 1; i++) {
		for (int j = 1; j <= m - p + 1; j++) {
			ans = max(ans, get(i, j));
		}
	}
	cout << ans;
	ioi
}

Compilation message

ufo.cpp: In function 'int main()':
ufo.cpp:50:42: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf ("%d%d%d%d%d", &n, &m, &r, &k, &p);
                                          ^
ufo.cpp:55:26: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf ("%d", &a[i][j]);
                          ^
ufo.cpp:61:35: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf ("\n%c %d %d", &c, &x, &y);
                                   ^
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 2016 KB Output is correct
2 Incorrect 0 ms 2016 KB Output isn't correct
3 Runtime error 0 ms 2016 KB Execution killed because of forbidden syscall writev (20)
4 Runtime error 3 ms 2016 KB Execution killed because of forbidden syscall writev (20)
5 Incorrect 26 ms 2288 KB Output isn't correct
6 Runtime error 79 ms 3996 KB Execution killed with signal 11 (could be triggered by violating memory limits)
7 Execution timed out 2000 ms 5936 KB Execution timed out
8 Execution timed out 2000 ms 5936 KB Execution timed out
9 Execution timed out 2000 ms 5936 KB Execution timed out
10 Execution timed out 2000 ms 5936 KB Execution timed out
11 Execution timed out 2000 ms 5792 KB Execution timed out
12 Execution timed out 2000 ms 5936 KB Execution timed out
13 Execution timed out 2000 ms 10564 KB Execution timed out
14 Execution timed out 2000 ms 5792 KB Execution timed out
15 Execution timed out 2000 ms 5936 KB Execution timed out
16 Execution timed out 2000 ms 5792 KB Execution timed out
17 Runtime error 183 ms 10564 KB Execution killed with signal 11 (could be triggered by violating memory limits)
18 Execution timed out 2000 ms 10508 KB Execution timed out
19 Execution timed out 2000 ms 5936 KB Execution timed out
20 Correct 519 ms 5924 KB Output is correct