<｜begin▁of▁sentence｜>### Instruction:
Given a directed graph with the edge set [(0, 2), (2, 3), (3, 1), (1, 0)], how can you calculate the shortest paths from vertex 0 to vertices 1 and 3? Print the paths as lists of vertex IDs.
### Response:
import igraph as ig

# Create a directed graph
edges = [(0, 2), (2, 3), (3, 1), (1, 0)]
g = ig.Graph(edges=edges, directed=True)

# Define the source vertex and target vertices
source = 0
targets = [1, 3]

# Calculate shortest paths from the source to all target vertices
shortest_paths = g.get_shortest_paths(v=source, to=targets, mode='OUT', output='vpath')

# Print the shortest paths as lists of vertex IDs
for path in shortest_paths:
    print(path)
<|EOT|>
