Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define ll long long
- const int N = 1001;
- bool a[N][N];
- int kq[N], d[N];
- int n, k, dem;
- void nhap() {
- cin >> n >> k; kq[1] = k;
- for (int i = 1; i <= n; ++i) {
- int m; cin >> m;
- for (int j = 1; j <= m; ++j) {
- int x; cin >> x;
- a[i][x] = true;
- }
- }
- }
- void dfs(int u) {
- d[u] = true;
- for (int v = 1; v <= n; ++v) {
- if (a[u][v] == 1 && d[v] == false) {
- kq[++dem] = v; d[v] = true;
- dfs(v);
- }
- }
- }
- void inKq() {
- cout << dem << endl;
- for (int j = 1; j <= dem; ++j)
- cout << kq[j] << ' ';
- }
- int main() {
- cin.tie(nullptr) -> sync_with_stdio(false);
- // freopen("ds.inp", "r", stdin);
- // freopen("ds.out", "w", stdout);
- nhap();
- dem = 1; dfs(k);
- inKq();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement