168262025-05-13 18:28:32algoproJáték a síkoncpp17Runtime error 0/10030ms632 KiB
// UUID: e0436aa0-58ad-4d75-abf8-a67451e8bdf1
#include <bits/stdc++.h>
using namespace std;

int n;
vector<vector<int>> nbrs;
vector<bool> vis;

bool dfs(int Indx){
	vis[Indx]=true;
	for(int& x : nbrs[Indx]) if(!vis[x]) if(!dfs(x)) return true;
	vis[Indx]=false;
	return false;
}

int main() {
	int n;
	cin >> n;
	vector<int> x(n), y(n);
	for(int i=0;i<n;i++){
		cin >> x[i] >> y[i];
		for(int j=0;j<i;j++){
			if(abs(x[i]-x[j])+abs(y[i]+y[j])==1){
				nbrs[i].push_back(j);
				nbrs[j].push_back(i);
			}
		}
	}
	vector<int> win;
	for(int i=0;i<n;i++){
		vis.assign(n, false);
		if(dfs(i)) win.push_back(i);
	}
	cout << win.size() << '\n';
	for(int i=0;i<win.size();i++) cout << x[win[i]] << ' ' << y[win[i]] << '\n';
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Runtime error1ms332 KiB
2Runtime error3ms508 KiB
subtask20/9
3Runtime error1ms316 KiB
4Runtime error1ms508 KiB
subtask30/10
5Runtime error1ms500 KiB
6Runtime error1ms496 KiB
7Runtime error1ms316 KiB
8Runtime error1ms316 KiB
9Runtime error1ms316 KiB
10Runtime error1ms316 KiB
11Runtime error1ms316 KiB
12Runtime error1ms316 KiB
subtask40/10
13Runtime error3ms528 KiB
14Runtime error1ms316 KiB
15Runtime error1ms508 KiB
16Runtime error1ms564 KiB
subtask50/16
17Runtime error1ms316 KiB
18Runtime error1ms316 KiB
19Runtime error1ms316 KiB
20Runtime error1ms316 KiB
21Runtime error1ms316 KiB
subtask60/18
22Runtime error3ms316 KiB
23Runtime error1ms500 KiB
24Runtime error1ms316 KiB
25Runtime error1ms316 KiB
26Runtime error1ms564 KiB
subtask70/37
27Runtime error1ms316 KiB
28Runtime error29ms432 KiB
29Runtime error28ms508 KiB
30Runtime error28ms316 KiB
31Runtime error29ms316 KiB
32Runtime error28ms316 KiB
33Runtime error6ms316 KiB
34Runtime error6ms420 KiB
35Runtime error6ms316 KiB
36Runtime error29ms316 KiB
37Runtime error29ms316 KiB
38Runtime error30ms632 KiB
39Runtime error29ms436 KiB
40Runtime error29ms428 KiB
41Runtime error29ms436 KiB
42Runtime error28ms436 KiB