場所の距離間を全通り求めてその中から最小のものを選択するプログラムを作成しているのですが、例えば4つの場所ABCD間の距離を要素としてあらわした場合、
int kyori[4][4]={{0,1,2,4}, {1,0,3,5}, {2,3,0,6}, {4,5,6,0}};
のように設定したとして、kyori[0][1],kyori[0][2],kyori[0][3]からスタートし、全ての場所を回るように残りを巡り、足しあわせた時最小値となる道順を求めると考える。
これをすべての通り方について考えると
kyori[0][1]+kyori[1][2]+kyori[2][3]+kyori[3][0] kyori[0][1]+kyori[1][3]+kyori[3][2]+kyori[2][0] kyori[0][2]+kyori[2][1]+kyori[1][3]+kyori[3][0] kyori[0][2]+kyori[2][3]+kyori[3][1]+kyori[1][0] kyori[0][3]+kyori[3][1]+kyori[1][2]+kyori[2][0] kyori[0][3]+kyori[3][2]+kyori[2][1]+kyori[1][0]
と表すことができるのですが場所の数を増やしてkyoriの要素(例えばkyori[5][5]やkyori[6][6]としてkyori[0][n](n=1,2,...)からスタート)が変わっても対応できるようなプログラムはどのように作成すればよろしいでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。