제출 #529664

#제출 시각아이디문제언어결과실행 시간메모리
529664c28dnv9q3Nautilus (BOI19_nautilus)C++17
0 / 100
3 ms204 KiB
#include <vector>
#include <iostream>

int main() {
	int R, C, M;
	scanf("%d%d%d", &R, &C, &M);
	std::vector<std::vector<char>> map(R);
	for (int i = 0; i < R; i++) {
		map[i].resize(C);
	}
	getchar();
	for (int i = 0; i < R; i++) {
		for (int j = 0; j < C; j++) {
			char x;
			x = getchar();
			map[i][j] = x;
		}
		getchar();
	}
	std::vector<int> commands(M);
	for (int i = 0; i < M; i++) {
		char c = getchar();
		int x = -1;
		switch (c) {
		case 'N': x = 0; break;
		case 'S': x = 1; break;
		case 'E': x = 2; break;
		case 'W': x = 3; break;
		}
		commands[i] = x;
	}

	int counter = 0;
	for (int i = 0; i < R; i++) {
		for (int j = 0; j < C; j++) {
			int x = i, y = j;
			for (int z = M - 1; z >= -1; z--) {
				if (x < 0 || y < 0 || x >= R || y >= C) {
					goto END;
				}
				if (map[y][x] == '#') {
					goto END;
				}
				if(z==-1){
					counter++;
					goto END;
				}
				else {
					int c = commands[z];
					switch (c){
					case 0:x--; break;
					case 1:x++; break;
					case 2:y++; break;
					case 3:y--; break;
					}
				}
			}
		END:counter = counter;
		}
	}
	std::cout << counter;
	return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

nautilus.cpp: In function 'int main()':
nautilus.cpp:6:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
    6 |  scanf("%d%d%d", &R, &C, &M);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...