#include <bits/stdc++.h>
#define int long long
using namespace std;
vector <pair<int,int>> z[1000005];
bool del[1000005];
bool vis[1000005];
stack<int> st;
vector <int> pos;
vector <vector<int>> res;
int sl[1000005];
int cur[1000005];
void dfs(int i){
    for (auto p:z[i]){
         if (del[p.second]){
            continue;
         }
         del[p.second]=true;
         dfs(p.first);
    }
    pos.push_back(i);
}
signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int a,b;
    cin >> a >> b;
    for (int i=1;i<=b;i++){
         int x,y;
         cin >> x >> y;
         z[x].push_back({y,i});
         z[y].push_back({x,i});
         sl[x]++;
         sl[y]++;
    }
    vector <int> pre;
    dfs(1);
    for (auto p:pos){
        if (vis[p]){
            vector <int> pre;
            int v=0;
            while (v!=p){
                  v=st.top();
                  st.pop();
                  vis[v]=false;
                  pre.push_back(v);
            }
            res.push_back(pre);
        }
        vis[p]=true;
        st.push(p);
    }
    for (auto c:res){
         for (auto p:c){
             cout << p << " ";
         }
         cout << "\n";
    }
    return 0;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |