57062023-09-09 18:10:03TomaSajtElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 6/5014ms5944 KiB
#include <bits/stdc++.h>
using namespace std;

vector<bool> vis;
vector<vector<int>> g;

void dfs(int u) {
  if (vis[u]) return;
  vis[u] = 1;
  if (g[u].size() >= 3) return;
  for (int v : g[u]) dfs(v);
}

int main() {
  cin.tie(0), ios::sync_with_stdio(0);

  int n, m;
  cin >> n >> m;
  g.resize(n + 1);
  vis.resize(n + 1);

  while (m--) {
    int u, v;
    cin >> u >> v;
    g[u].push_back(v);
    g[v].push_back(u);
  }

  for (int i = 1; i <= n; i++) {
    if (g[i].size() == 1) dfs(i);
  }

  vector<int> sol;
  for (int i = 1; i <= n; i++) {
    if (vis[i] && g[i].size() != 1) sol.push_back(i);
  }

  cout << sol.size() << '\n';
  for (int i : sol) cout << i;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/50
1Hibás válasz0/03ms2104 KiB
2Hibás válasz0/014ms3976 KiB
3Hibás válasz0/22ms2120 KiB
4Elfogadva2/22ms2244 KiB
5Elfogadva2/22ms2384 KiB
6Hibás válasz0/22ms2476 KiB
7Hibás válasz0/23ms2684 KiB
8Hibás válasz0/23ms3108 KiB
9Hibás válasz0/24ms3536 KiB
10Hibás válasz0/26ms4080 KiB
11Elfogadva2/28ms4600 KiB
12Hibás válasz0/28ms4664 KiB
13Hibás válasz0/33ms4124 KiB
14Hibás válasz0/34ms4252 KiB
15Hibás válasz0/34ms4312 KiB
16Hibás válasz0/34ms4500 KiB
17Hibás válasz0/38ms4796 KiB
18Hibás válasz0/38ms4820 KiB
19Hibás válasz0/38ms5164 KiB
20Hibás válasz0/314ms5376 KiB
21Hibás válasz0/314ms5944 KiB
22Hibás válasz0/314ms5900 KiB