Cod sursa(job #3275714)

Utilizator raresmihai1234Rares Mihai raresmihai1234 Data 11 februarie 2025 17:03:56
Problema Sortare topologica Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>
#include <map>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
map<pair<int,int>,bool>a;
short int v[1005],i,h[1005],n,m,x,y,g;
void df(int k)
{v[k]=1;
//int ok=0;
    for (int i=1;i<=n;i++)
    {
        if (a[{k,i}]==1&&v[i]==0)
        {
            v[i]=1;
            //ok=1;
            df(i);
        }
    }
    h[++g]=k;
}
int main()
{
    fin>>n>>m;
    for (i=1;i<=m;i++)
    {
        fin>>x>>y;
        a[{x,y}]=1;
    }
    for (int i=1;i<=n;i++)
    {
        if (v[i]==0)
        {
            df(i);
        }
    }
    for (int i=g;i>=1;i--)
    {
        fout<<h[i]<<' ';
    }
    return 0;
}