12862022-03-30 10:16:47Valaki2Játék a síkoncpp14Időlimit túllépés 45/100597ms2760 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define pb push_back
#define mp make_pair
#define fi first
#define se second

int n;
vector<pair<int, int> > points;
vector<vector<int> > adj;

vector<bool> vis;

bool wins(int cur) {
    vis[cur] = true;
    bool result = true;
    for(int nei : adj[cur]) {
        if(!vis[nei]) {
            if(wins(nei)) {
                result = false;
            }
        }
    }
    vis[cur] = false;
    return result;
}

void solve() {
    cin >> n;
    points.assign(n, mp(0, 0));
    adj.assign(n, vector<int> (0, 0));
    for(int i = 0; i < n; i++) {
        cin >> points[i].fi >> points[i].se;
    }
    for(int i = 0; i < n; i++) {
        for(int j = 0; j < n; j++) {
            if(abs(points[i].fi - points[j].fi) + abs(points[i].se - points[j].se) == 1) {
                adj[i].pb(j);
            }
        }
    }
    vector<pair<int, int> > ans;
    vis.assign(n, false);
    for(int i = 0; i < n; i++) {
        if(wins(i)) {
            ans.pb(points[i]);
        }
    }
    cout << (int) ans.size() << "\n";
    for(pair<int, int> p : ans) {
        cout << p.fi << " " << p.se << "\n";
    }
}

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    solve();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva2ms1820 KiB
2Időlimit túllépés527ms2020 KiB
subtask29/9
3Elfogadva1ms1876 KiB
4Elfogadva1ms1880 KiB
subtask310/10
5Elfogadva1ms1904 KiB
6Elfogadva1ms1888 KiB
7Elfogadva1ms1896 KiB
8Elfogadva2ms1908 KiB
9Elfogadva1ms1912 KiB
10Elfogadva1ms1932 KiB
11Elfogadva1ms1928 KiB
12Elfogadva1ms1916 KiB
subtask410/10
13Elfogadva4ms2040 KiB
14Elfogadva4ms2028 KiB
15Elfogadva4ms2100 KiB
16Elfogadva4ms2144 KiB
subtask516/16
17Elfogadva17ms2220 KiB
18Elfogadva17ms2192 KiB
19Elfogadva17ms2196 KiB
20Elfogadva17ms2212 KiB
21Elfogadva18ms2308 KiB
subtask60/18
22Elfogadva4ms2156 KiB
23Elfogadva4ms2132 KiB
24Elfogadva4ms2152 KiB
25Elfogadva10ms2240 KiB
26Időlimit túllépés513ms1232 KiB
subtask70/37
27Elfogadva68ms2732 KiB
28Elfogadva71ms2760 KiB
29Időlimit túllépés517ms1820 KiB
30Időlimit túllépés517ms1664 KiB
31Időlimit túllépés509ms1860 KiB
32Időlimit túllépés513ms1828 KiB
33Időlimit túllépés584ms1580 KiB
34Időlimit túllépés565ms1784 KiB
35Időlimit túllépés578ms1800 KiB
36Időlimit túllépés588ms1820 KiB
37Időlimit túllépés586ms1868 KiB
38Időlimit túllépés582ms1980 KiB
39Időlimit túllépés596ms2072 KiB
40Időlimit túllépés597ms2184 KiB
41Időlimit túllépés565ms2240 KiB
42Időlimit túllépés575ms2304 KiB