Your question is Detect Cycles in Task Graph. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Given a directed graph of startup task dependencies, write a function that returns True if the graph contains a cycle and False otherwise. The input is a list of task names tasks and a list of directed edges dependencies, where each edge [a, b] means task a depends on task b.
def has_cycle(tasks, dependencies):