168272025-05-13 18:29:12algoproJáték a síkoncpp17Wrong answer 0/10030ms676 KiB
// UUID: 958a0c6d-5930-4096-ab9c-9a196699352e
#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);
	nbrs.resize(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
1Wrong answer1ms316 KiB
2Wrong answer2ms512 KiB
subtask20/9
3Wrong answer1ms316 KiB
4Wrong answer1ms316 KiB
subtask30/10
5Wrong answer1ms316 KiB
6Wrong answer1ms508 KiB
7Wrong answer1ms316 KiB
8Wrong answer1ms316 KiB
9Accepted1ms316 KiB
10Wrong answer1ms328 KiB
11Wrong answer1ms316 KiB
12Wrong answer1ms316 KiB
subtask40/10
13Wrong answer3ms316 KiB
14Wrong answer3ms316 KiB
15Wrong answer3ms316 KiB
16Wrong answer4ms452 KiB
subtask50/16
17Wrong answer9ms472 KiB
18Wrong answer4ms316 KiB
19Wrong answer4ms444 KiB
20Wrong answer3ms320 KiB
21Wrong answer3ms508 KiB
subtask60/18
22Wrong answer3ms316 KiB
23Wrong answer3ms316 KiB
24Wrong answer3ms316 KiB
25Wrong answer3ms460 KiB
26Wrong answer3ms316 KiB
subtask70/37
27Wrong answer29ms588 KiB
28Wrong answer29ms316 KiB
29Wrong answer28ms556 KiB
30Wrong answer28ms316 KiB
31Wrong answer29ms316 KiB
32Wrong answer29ms316 KiB
33Wrong answer6ms556 KiB
34Wrong answer6ms556 KiB
35Wrong answer6ms456 KiB
36Wrong answer29ms556 KiB
37Wrong answer28ms316 KiB
38Wrong answer30ms676 KiB
39Wrong answer29ms556 KiB
40Wrong answer29ms552 KiB
41Wrong answer29ms316 KiB
42Wrong answer28ms552 KiB