Cod sursa(job #3194757)

Utilizator radu._.21Radu Pelea radu._.21 Data 19 ianuarie 2024 11:17:09
Problema Mesaj4 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <fstream>
#include <vector>
using namespace std;
int n,m;
vector<int>G[100001];
int f[100001],k=0;
struct abc{
    int i; int j;
}rez[200001];
void dfs(int nod){
    f[nod]=1;
    for(auto x : G[nod])
        if(!f[x]){
            rez[++k]={x,nod};
            dfs(x);
        }
}
ifstream fin("mesaj4.in");
ofstream fout("mesaj4.out");
int main(){
    fin>>n>>m;
    while(m--){
        int x,y; fin>>x>>y;
        G[x].push_back(y);
        G[y].push_back(x);
    }
    dfs(1);
    for(int i=1;i<=n;i++)
    if(f[i]==0){
        fout<<-1<<" ";
        return 0;
    }
    fout<<2*k<<'\n';
    for(int i=k;i>=1;i--)
        fout<<rez[i].i<<" "<<rez[i].j<<'\n';
    for(int i = 1; i<=k;i++)
        fout<<rez[i].j<<" "<<rez[i].i<<'\n';

    return 0;
}