Pagini recente » Cod sursa (job #1701879) | Cod sursa (job #2931684) | Cod sursa (job #226598) | Cod sursa (job #1714165) | Cod sursa (job #2754825)
VISITED = {}
EDGES = {}
RESULT = []
def dfs(x):
global VISITED, EDGES, RESULT
VISITED[x] = True
for y in (EDGES.get(x) or []):
if not VISITED.get(y):
dfs(y)
RESULT.append(x)
with open('sortaret.in', 'r') as f:
n, m = map(int, f.readline().split())
for i in range(m):
x, y = map(int, f.readline().split())
EDGES.setdefault(x, []).append(y)
for i in range(1, n+1):
if not VISITED.get(i):
dfs(i)
g = open('sortaret.out', 'w')
while len(RESULT) > 0:
g.write(str(RESULT.pop()) + " ")
g.close()