Pagini recente » Cod sursa (job #144477) | Cod sursa (job #2272425) | Cod sursa (job #2101445) | jc2020/solutii/shopping | Cod sursa (job #1856129)
#include <bits/stdc++.h>
using namespace std;
constexpr int maxn = 1e5;
vector<int> vec[maxn];
int in_deg[maxn] = {};
vector<int> rez;
void toposort(){
stack<int> st;
st.push(0);
while(!st.empty()){
const int cur = st.top();
st.pop();
rez.push_back(cur);
for(const auto x : vec[cur])
if(--in_deg[x] == 0) st.push(x); } }
int main(){
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n, m;
f >> n >> m;
for(int i = 1; i <= n; ++i){
++in_deg[i];
vec[0].push_back(i); }
for(int i = 0, x, y; i < m; ++i){
f >> x >> y;
++in_deg[y];
vec[x].push_back(y); }
toposort();
for(int i = 1; i < rez.size(); ++i) g << rez[i] << ' ';
return 0; }