답안 #475210

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
475210 2021-09-21T13:14:14 Z bigo Trampoline (info1cup20_trampoline) C++14
23 / 100
2000 ms 352836 KB
#include <iostream>
#include <vector>
#include <cmath>
#include <set>
using namespace std;
#define pii pair<int, int>
vector<vector<int>>vec;
vector<bool>visit;
void dfs(int v) {
	visit[v] = true;
	for (auto u:vec[v]) {
		if (!visit[u])
			dfs(u);
	}
}
int main() {
	int r, c, n;
	cin >> r >> c >> n;
	set<pii>green;
	int a, b;
	for (int i = 0; i < n; i++) {
		cin >> a >> b;
		a--, b--;
		green.insert({ a,b });
	}
	vec.resize(r * c);
	visit.resize(r * c, false);
	for (int i = 0; i < r; i++) {
		for (int j = 0; j < c; j++) {
			if (green.find({ i,j }) != green.end()) {
				if (j != c - 1)
					vec[i * c + j].push_back(i * c + j + 1);
				if (i != r - 1)
					vec[i * c + j].push_back((i + 1) * c + j);
			}
			else {
				if (j != c - 1)
					vec[i * c + j].push_back(i * c + j + 1);
			}
		}
	}
	int t;
	cin >> t;
	while (t--) {
		int y1, x1, y2, x2;
		cin >> y1 >> x1 >> y2 >> x2;
		y1--, x1--, y2--, x2--;
		dfs(y1 * c + x1);
		if (visit[y2 * c + x2])
			cout << "YES";
		else
			cout << "NO";
		cout << endl;
		visit.resize(0);
		visit.resize(r * c, false);
	}
}
# 결과 실행 시간 메모리 Grader output
1 Correct 22 ms 2892 KB 200 token(s): yes count is 21, no count is 179
2 Correct 32 ms 2548 KB 200 token(s): yes count is 70, no count is 130
3 Correct 18 ms 2788 KB 197 token(s): yes count is 25, no count is 172
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 2109 ms 352836 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 288 ms 19524 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 8 ms 972 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 304 ms 19524 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -