約2019 CCF第五質問番号317サブタスク

最初の接触グラフアルゴリズムは、サンプルをテストした後、タイトルによって書かれたが、後に常にエラー、最初にぶら下がっを促すように提出しました。バグを発見する際に知ってはいけません

(復帰前の最後のシステム(「休止」)は、内部対でデバッグするために使用されます)

ギャングの希望は(ちょうど今日のブログを適用)facie間違ったああを助けることができます

1つの#include <iostreamの>
 2の#include <アルゴリズム>
 3。 使用した 名前空間STD;
 4  の#define INF 1001
 5。 INT A [ 10000 ] [ 10000 ]; // マトリックス
6  BOOLの種類[ 10000 ]; // ノードのタイプを記録
7。 INT sort_array [ 10000 ];
 8  int型のmain()
 9  {
 10      INT N-、M、K;
 11      CIN >> M >> N- K;
 12である     ためINTI = 0 ; 私は、n <; I ++ 13          CIN >> 種類[I]。
14      のためには、int型 = Iを0 ; iがn <; I ++ 15          のためのINT J = 0 ; J <N; J ++ 16の             場合(I == j)は
 17                  [I] [J] = 0 ;
18              他の
19                  [I] [J] = INF。
20  
21      // 创建图
22      のためのint型 I = 0 ; iが<M; iが++ 23は     、{
 24          INT P、Qは、R
 25          CIN Q >> >> P R&LT;
 26である          [P - 1 ] [Q - 1 ] = R&LT;
 27          A [Q - 1 ] [P - 1 ] = R&LT;
 28      } // 隣接側重み付けの値ごとに
 29  
30      // 2点それぞれとの間の最短距離を計算するためにフロイドのアルゴリズム
31がある     ためINT K = 0 ; K <N-K ++ 32          のためのINT I = 0 ;私は<n-は、I ++ 33がある             ためのInt J = 0 ; Jが<N-、J ++ 34である             {
 35                  IF([I] [K] + [K] [J] < 2003 && A [I] [K] + [K] [J] < [I] [J])
 36                      A [I] [J] [I] [K] + = A [K] [J]を;
 37              }
 38は 
39      のためにint型 I = 0、I <N - 、I ++ )// のmサイクルラウンドの合計
40      {
 41は、         INTポインタ= 0 ; // 書き込みsort_arrayへのポインタ
42がある         ためINT J = 0; J < 10000 ; J ++ 43である         {
 44は              sort_array [J] = INFと、
 45          } // 最大値に初期化され、すべての
46である         ためINT J = 0 ; J <N-; J ++ 47          {
 48              IF (一種[J] )
 49              {
 50                  sort_array [ポインタは] = [I]、[J]と、
 51で                  ポインタ++ ;
 52である             }
 53れる          } // この時点で、アクティブノードはsort_array書き込み到達する最短距離た
 54である 
55         // ソート昇順使用ソート機能sort_array 
56は          (sort_array、sort_array +ソートポインタ);
 57である         INT SUM = 0 ;
 58          のためにINT P = 0 ; P <K、P ++ 59          {
 60              IF(sort_array [P] < = 1000年61である                  SUM + = sort_array [P];
 62である         }
 63れる          COUT SUM << << ENDL;
 64      }
 65      システム(" PAUSE " );
 66      リターン 0 ;
67 }

 

おすすめ

転載: www.cnblogs.com/cs-yxk/p/11488413.html