基本的な考え方---貪欲
、あなたが特定の最小のコストで一定の順序を削除するに必要な最小のコスト、以来見つけるのは難しい、いつものx、yの最小値で、特定の最小業界の最終総コストを削除します!したがって、次の簡単なコードを書くことができます
コード
1つの#include <iostreamの> 2の#include <cstdioを> 3の#include <アルゴリズム> // ヘッダ 4。 使用した 名前空間STD; 5 int型 N-、M、ヴァル[ 1025 ] / * 体重* / 、ANS、X、Y。 6 INT メイン() 7。 { 8。 CIN >> N- Mを、 図9 のために(登録INT I = 1 ; I <= N; I ++ ) 10 CIN >>ヴァル[I]; // 入力 11 ながら(M-- ) 12 { 13は CIN >> X ; Y 14の ANS + =分(ヴァル[X]、ヴァル[Y]); // すべてのステップは、必要最小限の 15 } 16 COUT ANS << << ENDLを、 17 リターン 0 ; 18です }
それは単純ではないですか?