Cod sursa(job #495483)

Utilizator feelshiftFeelshift feelshift Data 25 octombrie 2010 16:14:31
Problema Algoritmul lui Dijkstra Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.99 kb
#include <fstream>
#include <vector>
#include <list>
using namespace std;

const int INFINITY = 1001;
int nodes,edges;
vector< list< pair<int,int> > > graph;
vector<int> father;
vector<int> dist;
vector<bool> visited;

void read();
void manageMemory();
void dijkstra(int startNode);

int main() {
	read();

	for(int i=1;i<=nodes;i++)
		if(!visited.at(i))
			dijkstra(i);

	return (0);
}

void read() {
	ifstream in("dijkstra.in");
	int from,to,cost;

	in >> nodes >> edges;

	for(int i=1;i<=edges;i++) {
		in >> from >> to >> cost;

		graph.at(from).push_back(make_pair(to,cost));
	}

	in.close();
}

void manageMemory() {
	graph.resize(nodes+1);
	father.resize(nodes+1);
	dist.resize(nodes+1);
	visited.resize(nodes+1);

	dist.assign(dist.size(),INFINITY);
	dist.at(1) = NULL;
}

void dijkstra(int startNode) {
	int toVisit = startNode;
	list< pair<int,int> >::iterator it;

	for(it=graph.at(toVisit).begin();it=graph.at(toVisit).end();it++

	}

}