Submission #28198

#TimeUsernameProblemLanguageResultExecution timeMemory
28198lyzqm123 (#71)The City and The Bitcoin (FXCUP2_city)C++98
1 / 1
9 ms2640 KiB
#include <cstdio>
#include <queue>
using namespace std;
int N, M;
int map[301][301];
int go[301][301];
int main() {
	scanf("%d%d", &M, &N);
	for (int n = 0;n < N;n++)
		for (int m = 0;m < M;m++)
			scanf("%d", &map[n][m]);
	go[0][0] = 1;
	queue<int> q;
	q.push(0);
	while (!q.empty()) {
		int y = q.front() / M, x = q.front() % M;
		q.pop();

		if (y + 1 < N && map[y + 1][x] && !go[y + 1][x]) {
			go[y + 1][x] = 1;
			q.push((y + 1)*M + x);
		}
		if (x + 1 < M && map[y][x + 1] && !go[y][x + 1]) {
			go[y][x + 1] = 1;
			q.push(y*M + x + 1);
		}
	}
	if (go[N - 1][M - 1])
		printf("Yes\n");
	else
		printf("No\n");
	return 0;
}

Compilation message (stderr)

city.cpp: In function 'int main()':
city.cpp:8:23: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d", &M, &N);
                       ^
city.cpp:11:27: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d", &map[n][m]);
                           ^
#Verdict Execution timeMemoryGrader output
Fetching results...