Learn practical skills, build real-world projects, and advance your career
import networkx as nx 
costs = {'n0': 0 , 'n1':2 , 'n2':4,'n3':4,'n4':1,'n5':1,'n6':2,'n7':0,'n8':0}
goalNodes = ['n7','n8']
def makeG(mg):
    for i in mg.nodes:
        mg.node[i]['solved']=False
        mg.node[i]['cost'] = costs[i]

    for i in mg.edges:
        mg[i[0]][i[1]]['marked']=False
        mg[i[0]][i[1]]['andby']=None
        
def cost(mg,node):
    return nx.get_node_attributes(mg,'cost')[node]
def solved(mg,node):
    return nx.get_node_attributes(mg,'solved')[node]