#include #include #include #include using namespace std; int main() { float miasta[130][3]; float odleglosc[130][130]; float c = 1000.0; float wspx, wspy, a, cos; float suma = 0.0, suma_aktualna = 0.0; stringstream trasaakt, trasa; ifstream plik; plik.open("ch130.tsp"); plik >> cos; int i = 0; while( !plik.eof() ) { plik >> a >> wspx >> wspy; miasta[i][0] = wspx; miasta[i][1] = wspy; miasta[i][2] = 0; i++; } for(int i = 0; i < 130; i++) for(int j = 0; j < 130; j++) odleglosc[i][j] = sqrt(pow(miasta[j][0] - miasta[i][0], 2) + pow(miasta[j][1] - miasta[i][1], 2)); for(int i = 0; i < 130; i++) { miasta[i][2] = 1; int x = i; int y; for(int k = 0; k < 129; k++) { for(int j = 0; j < 130; j++) { if(odleglosc[x][j] != 0 && miasta[j][2] == 0 && odleglosc[x][j] < c) { c = odleglosc[x][j]; y = j; } } suma += odleglosc[x][y]; x = y; miasta[y][2] = 1; } suma += odleglosc[x][i]; for(int c = 0; c < 130; c++) miasta[c][2] = 0; cout << suma << endl; suma = 0; } }