問題名:Cleaning Robot (PKU) 出典:Problem F, ACM/ICPC Japan Domestic, 2005-07-01 難易度:☆☆☆ 問題の種類:グラフ 解法:距離行列作成+TSP 解答ソースコード: 2688-deq.cpp アルゴリズムの概略 「最大10個の汚れたタイルを全て掃除するための最小移動回数を求めよ」という問題。 実装能力が多少問われますが,問題自体はよく読めば単純です。 汚れたタイルの数が最大10個というのがミソ。 問題から,「汚れたタイル」を全て訪問するために必要な最短距離を求めればいいことがわかります。 これはいわゆる巡回セールスマン問題 (TSP) と呼ばれている有名な問題です (唯一違う点は,今回は出発地点に戻ってくる必要がないことですね)。 そのためには,まずは各「汚れたタイル」間の距離を全て求めておく必要があります。 これは表の形