#include <iostream>

using namespace std;


void distanceA(int a[])

{

for (int i = 0; i < 7; i++)

{

cout << i << "shortest path from : " << a[i] << endl;

}

}




int main()

{

int x;

cout << "departing city: 1, 2, 3, 4, 5, 6" << endl;

cout << "your choice ";

cin >> x;



int inf = 10000;

int c[7][7] = {

{ 0,inf,inf ,inf ,inf ,10,inf },

{ 20,0,80,inf, 20,inf, inf },

{ inf,inf,0,inf,20,inf,inf },

{ 50,inf ,inf ,0,30,inf ,inf },

{ inf ,90,inf ,30,0,inf ,inf },

{ inf ,inf ,40,inf ,inf ,0,20 },

{ inf ,inf ,10,inf ,inf ,10,0 }

};

int distanceB[7] = { inf ,inf ,inf ,inf ,inf ,inf ,inf };

int s[7] = { 0,0,0,0,0,0,0 };

int i, j, m;

for (i = 0; i < 7; i++)

{

distanceB[i] = c[x][i];

}

s[x] = 1;



for (i = 0; i < 7; i++)

{

int min = inf;

for (j = 0; j < 7; j++)

{

if (s[j] == 0 && c[x][j] < min)

{

min = c[x][j];

m = j;

}

}

s[m] = 1;

for (j = 0; j < 7; j++)

{

if (distanceB[j] > c[m][j] + distanceB[m])

distanceB[j] = c[m][j] + distanceB[m];

}

x = m;

}


distanceA(distanceB);

return 0;

}


프로그래밍 천재형님들...

이거 c++형식인데 java형식으로 좀 바꿔주십쇼

간곡히 부탁드립니다..