Cod sursa(job #2295372)

Utilizator stefanjumarea02jumarea stefan stefanjumarea02 Data 3 decembrie 2018 16:52:43
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.11 kb
#include <iostream>
#include <fstream>
#include <vector>

using namespace std;

ifstream f("sortaret.in");
ofstream go("sortaret.out");

int n, m, x, y, b, q[1000], p, u, z;
vector <int> g[1000];
bool v[1000];

void dfs(int nod)
{
    //cout << nod << " ";
    v[nod]=true;
    q[++u] = nod;
    for(int i = 0; i < g[nod].size(); i ++)
        {
            if (!v[g[nod][i]])
            {
                dfs(g[nod][i]);

            }
        }
}

/*void bfs(int nod)
{
    p = u = 1;
    q[p] = nod;
    v[nod] = true;
    while (p <= u)
    {
        z = q[p];
        for (int i = 0; i < g[z].size(); i ++)
        {
            if (!v[g[z][i]])
            {
                q[++u] = g[z][i];
                v[g[z][i]] = true;
            }
            p++;
        }
    }
    for (int i = 1; i <= u; i ++)
        cout << q[i] << " ";
}*/


int main()
{
    f >> n >> m;
    for (int i = 1; i <= m; i ++)
    {
        f >> x >> y;
        g[x].push_back(y);
        g[y].push_back(x);
    }
    dfs(1);
    for (int i = 1; i <= u; i ++)
        go << q[i] << " ";
}