168162025-05-13 17:47:43algoproJáték a síkoncpp17Futási hiba 19/10057ms7324 KiB
// UUID: ec82c01e-4bcb-440c-a476-c18246ac8e9c
#include <bits/stdc++.h>
using namespace std;
int n;
const int c=20;
bool dp[c][1<<c];
bool vis[c][1<<c];
vector<int> adj[c];
bool memo(int cs, int mask)
{
	if(vis[cs][mask]) return dp[cs][mask];
	vis[cs][mask]=1;
	for(int &i:adj[cs])
		if(((1<<i)&mask)==0 && !memo(i,mask^(1<<i))) dp[cs][mask]=1;
	return dp[cs][mask];
}
int main() {
	ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	cin>>n;
	vector<array<int, 2>> v(n);
	for(auto &[a,b]:v) cin>>a>>b;
	for(int i=0; i<n; i++)
		for(int j=0; j<n; j++)
			if(abs(v[i][0]-v[j][0])+abs(v[i][1]-v[j][1])==1) adj[i].push_back(j);
	vector<array<int, 2>> ans;
	for(int i=0; i<n; i++)
		if(!memo(i,(1<<i))) ans.push_back(v[i]);
	cout<<(int)ans.size()<<"\n";
	for(auto &[a,b]:ans)
		cout<<a<<" "<<b<<"\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Futási hiba4ms564 KiB
subtask29/9
3Elfogadva1ms508 KiB
4Elfogadva1ms316 KiB
subtask310/10
5Elfogadva1ms564 KiB
6Elfogadva1ms564 KiB
7Elfogadva3ms2796 KiB
8Elfogadva8ms5968 KiB
9Elfogadva3ms1968 KiB
10Elfogadva4ms2940 KiB
11Elfogadva1ms820 KiB
12Elfogadva8ms7324 KiB
subtask40/10
13Futási hiba4ms460 KiB
14Futási hiba4ms708 KiB
15Futási hiba4ms708 KiB
16Futási hiba4ms704 KiB
subtask50/16
17Futási hiba4ms564 KiB
18Futási hiba4ms820 KiB
19Futási hiba4ms752 KiB
20Futási hiba4ms564 KiB
21Futási hiba4ms564 KiB
subtask60/18
22Futási hiba4ms1012 KiB
23Futási hiba4ms820 KiB
24Futási hiba4ms1128 KiB
25Futási hiba4ms820 KiB
26Futási hiba4ms568 KiB
subtask70/37
27Futási hiba57ms756 KiB
28Futási hiba57ms568 KiB
29Futási hiba57ms824 KiB
30Futási hiba57ms1048 KiB
31Futási hiba57ms856 KiB
32Futási hiba57ms860 KiB
33Futási hiba10ms564 KiB
34Futási hiba9ms564 KiB
35Futási hiba10ms564 KiB
36Futási hiba57ms892 KiB
37Futási hiba57ms820 KiB
38Futási hiba57ms820 KiB
39Futási hiba57ms820 KiB
40Futási hiba57ms828 KiB
41Futási hiba57ms860 KiB
42Futási hiba57ms828 KiB