Huawei社は、書かれた:N度の友達

 

1つの#include <ビット/ STDC ++ H>
 2  使用して 名前空間STDを、
3  
4  ブール CMP(対< 整数整数 > A、対< INTINT > B){
 5      であれば(a.second> b.second)リターン 1 6      場合(a.second == b.second)リターン a.first < b.first。
7      リターン 0 ;
8  }
 9  
10  INT メイン(){
 11      のint T。
12      cinを>> トン。
13      一方(t-- ){
 14          のint M、I、N。
15          CIN >> M >> I >> N。
16          int型K;
17          CIN >> K。
18          
19          ベクター<ベクトル< 整数 >>グラフ(M、ベクトル< INT >(M、0 ));
20          int型のKI、KJ、キロワット。
21          のためにint型 i = 0 ; I <K I ++ ){
 22              CIN >> KI >> KJ >> KW。
23              グラフ[KI] [KJ] = KW。
キロワット。
25          }
 26          
27          ベクター< BOOL >訪問(M、0 ); 
28          ベクター< INT >優しい(M - 1 )。
29          キュー< 整数 > TEMP。
30          temp.push(I)。
31          ながら(!temp.empty()){
 32              のintサイズ= temp.size()。
33              一方(size-- ){
 34                  INT CUR = temp.front()。
35                  temp.pop()。
36                 訪問[CUR] = 1 37                  のためにint型のx = 0 ; X <Mであり; x ++ ){
 38                      場合(!訪問[X] &&グラフ[CUR] [X]> 0 &&フレンドリー[X] == - 1 ){
 39                          フレンドリー[X] =フレンドリー[CUR] + グラフ[CUR] [X]。
40                          temp.push(X)。
41                      }                     
 42                  }            
 43              }
 44              
45              N-- 46              であれば(N == 0破ります;
47          }
 48          
49          であれば(N =!0 || temp.empty()){
 50              COUT << - 1 << ENDL。
51              続けます52          }
 53          
54          ベクター<ペア< 整数整数 >> RES。
55          
56          地図< INTINT > 存在します。
57          ながら(!temp.empty()){
 58が              存在する[temp.front()] = 優しい[temp.front()]。
59             temp.pop();         
60          } 
 61          res.assign(exist.begin()、exist.end())。
62          
63          ソート(res.begin()、res.end()、CMP)。
64          のためのint型のp = 0 ; p <res.size(); P ++ ){
 65              COUT << RES [P] 1次回<< "  " 66          }
 67          COUT << ENDL。
68          
69      }
 70      
71 }

 

おすすめ

転載: www.cnblogs.com/liugl7/p/11489184.html