**The detailed instruction is in the attached file.
– python 3.4 or higher
– use of pycharm
– You must implement it with Dijkstra Algorithm.
I think it is to run multiple Dijkstra; from start to end first and get the profit then run it from start to pick up, from pick up to delivery, from delivery to end and add those u then compare which one is smaller. The delivery to end then minus the delivery cost.
– Strictly follow the instruction attached in the file.
– Must pass all the test cases shown in the attached file
– DO NOT use python dictionaries or sets due to complexity.
– Must document each complexity and space complexity – Make sure to write it under a function opt_delivery(n, roads, start, end, delivery) as guided in the instruction sheet.
– Since it requires graph class, I have attached the file assess.py and you can extend ur source code for the problem, using the classes(graph, vertex, and edge) you can modify the classes as well.
Note: Please ensure that you carefully check the complexity of each inbuilt python function and data structure that you use, as many of them make the complexities of your algorithms worse. Also, I have attached a test case and please make sure to pass all the tests.