PFDEP  Project File Dependencies
project managers, such as the UNIX utility make, are used to maintain large software projects made up from many components. Users write a project file specifying which components (called tasks) depend on others and the project manager can automatically update the components in the correct order.
problem
Write a program that reads a project file and outputs the order in which the tasks should be performed.
Input
For simplicity we represent each task by an integer number from $1, 2, \ldots, N$ (where $N$ is the total number of tasks). The first line of input specifies the number $N$ of tasks and the number $M$ of rules, such that $N \le 100$, $M \le 100$.
The rest of the input consists of $M$ rules, one in each line, specifying dependencies using the following syntax:
$T_0$ $k$ $T_1$ $T_2$ $\ldots$ $T_k$
This rule means that task number $T_0$ depends on $k$ tasks $T_1, T_2, \ldots, T_k$ (we say that task $T_0$ is the target and $T_1, \ldots, T_k$ are dependents).
Note that tasks numbers are separated by single spaces and that rules end with a newline. Rules can appear in any order, but each task can appear as target only once.
Your program can assume that there are no circular dependencies in the rules, i.e. no task depends directly or indirectly on itself.
Output
The output should be a single line with the permutation of the tasks $1 \ldots N$ to be performed, ordered by dependencies (i.e. no task should appear before others that it depends on).
To avoid ambiguity in the output, tasks that do not depend on each other should be ordered by their number (lower numbers first).
Example
Input: 5 4 3 2 1 5 2 2 5 3 4 1 3 5 1 1 Output: 1 5 3 2 4
hide comments
aman_9899:
20170614 23:04:07
nice problem


up79:
20170610 14:42:18
brute force passed . i don't know how but my solution is working in 0.00 sec .


gboduljak:
20170323 23:56:19
cool problem, hint : Kahn's algorithm 

hasan356:
20170207 10:27:02
my first topological !! 

rahulpadhy:
20160825 20:10:09


Ram:
20160331 09:21:30
@aditya730, Thanks. That helped. Tried topo sort using dfs but in the end solved using indegree method. 

coder_shishir:
20160229 12:37:05
excellent topo..:)


aditya730:
20160131 12:24:42
If you are unable to think of any possible logic,then you probably haven't learnt the indegree method for topological sorting.This can be solved by slightly modifying the indegree method. 

Deepak :
20160119 21:13:44
nice and easy.AC in one go. 

manas0008:
20160112 17:26:23
My first code in C++ !!....used set in topological sort.

Added by:  overwise 
Date:  20071004 
Time limit:  0.405s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ERL JSRHINO NODEJS PERL6 VB.NET 
Resource:  ACM ICPC  SWERC 2001 