[SOLVED] Java program which reads a directed graph G 

25.00 $

Programming resource
Digital learning resource
Category:
Practical programming resource
Suitable for guided study and reference
Tutor guidance available when needed

Description

5/5 - (1 vote)

There are two standard ways to represent a graph G=(V,E), where V is a set of vertices and E is a set of edges; Adjacency list representation and Adjacency matrix representation.

An adjacency-list representation consists of an array Adj[|V|] of |V| lists, one for each vertex in V. For each u∈V, the adjacency list Adj[u] contains all vertices v such that there is an edge (u,v)∈E. That is, Adj[u] consists of all vertices adjacent to u in G.

An adjacency-matrix representation consists of |V| × |V| matrix A=aij such that aij=1 if (i,j)∈Eaij=0 otherwise.

Write a java program which reads a directed graph G represented by the adjacency list, and prints its adjacency-matrix representation. G consists of n(=|V|) vertices identified by their IDs 1,2,..,n respectively.

Input

In the first line, an integer n is given. In the next nn lines, an adjacency list Adj[u] for vertex u are given in the following format:

u k v1 v2 … vk

u is vertex ID and k denotes its degree. vi are IDs of vertices adjacent to u.

Output

As shown in the following sample output, print the adjacent-matrix representation of G. Put a single space character between aij .

Sample Input

4
1 2 2 4
2 1 4
3 0
4 1 3

Sample Output

0 1 0 1
0 0 0 1
0 0 0 0
0 0 1 0
Resource details

Understand the Task Before You Use the Resource

Review the requirements, identify the programming concepts involved, study the implementation and test your understanding with your own examples and modifications.