Cod sursa(job #3337090)
| Utilizator | Data | 26 ianuarie 2026 22:07:56 | |
|---|---|---|---|
| Problema | Sortare topologica | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.74 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n,m,x,y,i,j;
int d[50005],viz[50005];
vector<int>G[50005];
queue<int>q;
vector<int>ans;
void bfs()
{
while(!q.empty())
{
int nod=q.front();
q.pop();
for(auto x:G[nod])
{
d[x]--;
if(d[x]==0)
{
q.push(x);
}
}
fout<<nod<<" ";
}
}
int main(){
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x>>y;
G[x].push_back(y);
d[y]++;
}
i=0;
for(i=1;i<=n;i++)
{
if(d[i]==0)
{
q.push(i);
}
}
bfs();
return 0;
}
