https://www.geeksforgeeks.org/detect-negative-cycle-graph-bellman-ford/