답안 #658384

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
658384 2022-11-13T04:19:53 Z blackslex Tracks in the Snow (BOI13_tracks) C++17
100 / 100
460 ms 131036 KB
#include<bits/stdc++.h>

using namespace std;
using pii = pair<int, int>;

const int N = 4005, cd[4][2] = {{0, 1}, {1, 0}, {0, -1}, {-1, 0}};
int n, m, d[N][N], mx = 1;
char c[N][N];
deque<pii> q;

int main() {
	scanf("%d %d", &n, &m);
	for (int i = 0; i < n; i++) scanf("%s", c[i]);
	d[0][0] = 1;
	q.emplace_back(0, 0);
	while (!q.empty()) {
		int x, y;
		tie(x, y) = q.front();
		q.pop_front();
		mx = max(mx, d[x][y]);
		for (int i = 0; i < 4; i++) {
			int nx = x + cd[i][0], ny = y + cd[i][1];
			if (nx < 0 || nx >= n || ny < 0 || ny >= m || c[nx][ny] == '.' || d[nx][ny]) continue;
			if (c[nx][ny] == c[x][y]) d[nx][ny] = d[x][y], q.emplace_front(nx, ny);
			else d[nx][ny] = d[x][y] + 1, q.emplace_back(nx, ny);
		}
	}
	printf("%d", mx);
}

Compilation message

tracks.cpp: In function 'int main()':
tracks.cpp:12:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   12 |  scanf("%d %d", &n, &m);
      |  ~~~~~^~~~~~~~~~~~~~~~~
tracks.cpp:13:35: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |  for (int i = 0; i < n; i++) scanf("%s", c[i]);
      |                              ~~~~~^~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 10 ms 5460 KB Output is correct
2 Correct 0 ms 468 KB Output is correct
3 Correct 1 ms 596 KB Output is correct
4 Correct 6 ms 5076 KB Output is correct
5 Correct 3 ms 2900 KB Output is correct
6 Correct 1 ms 468 KB Output is correct
7 Correct 1 ms 724 KB Output is correct
8 Correct 1 ms 724 KB Output is correct
9 Correct 1 ms 1108 KB Output is correct
10 Correct 3 ms 2388 KB Output is correct
11 Correct 2 ms 2132 KB Output is correct
12 Correct 4 ms 3028 KB Output is correct
13 Correct 3 ms 2900 KB Output is correct
14 Correct 3 ms 2880 KB Output is correct
15 Correct 9 ms 5180 KB Output is correct
16 Correct 10 ms 5348 KB Output is correct
17 Correct 8 ms 5180 KB Output is correct
18 Correct 6 ms 5076 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 15 ms 30804 KB Output is correct
2 Correct 33 ms 15020 KB Output is correct
3 Correct 176 ms 73320 KB Output is correct
4 Correct 57 ms 32640 KB Output is correct
5 Correct 107 ms 53284 KB Output is correct
6 Correct 452 ms 108720 KB Output is correct
7 Correct 16 ms 32340 KB Output is correct
8 Correct 15 ms 30820 KB Output is correct
9 Correct 2 ms 596 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 15 ms 31572 KB Output is correct
12 Correct 2 ms 1492 KB Output is correct
13 Correct 34 ms 15000 KB Output is correct
14 Correct 20 ms 10316 KB Output is correct
15 Correct 19 ms 13180 KB Output is correct
16 Correct 15 ms 5716 KB Output is correct
17 Correct 80 ms 28772 KB Output is correct
18 Correct 63 ms 35584 KB Output is correct
19 Correct 54 ms 32644 KB Output is correct
20 Correct 45 ms 25616 KB Output is correct
21 Correct 108 ms 52708 KB Output is correct
22 Correct 108 ms 53376 KB Output is correct
23 Correct 147 ms 43816 KB Output is correct
24 Correct 103 ms 49848 KB Output is correct
25 Correct 284 ms 94312 KB Output is correct
26 Correct 426 ms 131036 KB Output is correct
27 Correct 411 ms 119996 KB Output is correct
28 Correct 452 ms 108640 KB Output is correct
29 Correct 459 ms 105980 KB Output is correct
30 Correct 442 ms 111060 KB Output is correct
31 Correct 350 ms 73504 KB Output is correct
32 Correct 460 ms 113972 KB Output is correct