カウントUVA 10766スパニング

1  // イタリアこの質問こと:各ポイント間のすべての最初に、mは到達できない含む、プログラムは、ほとんどのスパニングツリーを取得し、
 2  // K変数は無用です。
3  @ 式:ANS =マトリックスのマトリックス-マトリックス構築されたエッジ、
 4  // 行列どうか==行列側アップ行列で定義されるように、通常、それを内蔵J 
5。の#include <stdio.hの>
 6。の#include < 文字列 .H>
 7。の#include <math.h>の
 8の#include <アルゴリズム>
 9。 使用した 名前空間STD;
 10  の#defineのINF 0x3f3f3f3f
 11  の#define LLロングロングINT
 12は CONST  INT MAXN = 55 ;
 13は、 LL A [MAXN] [ MAXN];
 14 LL B [MAXN] [MAXN]。
15 LL決定基(int型N)
 16  {
 17      LLのRES = 1 18      のためにint型 i = 1 ; iが<= N; iが++ ){
 19          場合(!B [i]は[I]){
 20              ブールフラグ= 21              のためのint型 J = I + 1、J <= nであり、j ++ ){
 22                  であれば(B [j] [i])と{
 23                      フラグ= 24                      のためのint型 K = I、K <nであり、k ++){
 25                          スワップ(B [i]が[K]、B [j] [K])。
26                      }
 27の                      RES = - RES。
28                      ブレーク;
29                  }
 30              }
 31              であれば(!フラグ)
 32              リターン 0 33          }
 34          のためにINT J = I + 1、J <= nであり、j ++ ){
 35              ながら(B [j] [i])と{
 36                  LLのT = B [i]は[I] / B [j] [i]と;
37                  のためのint型K = I; K <= N; kは++ ){
 38                      B [i]は[K] = B [i]は[K] -t * B [j] [k]は、
39                      スワップ(B [i]が[K]、B [j] [K])。
40                  }
 41の                  RES = - RES。
42              }
 43          }
 44の          RES * = B [i]は[I]。
45      }
 46の     リターンRES。
47  }
 48  のint main()の
 49  {
 50      int型N、M、K。
51      一方(〜のscanf(" %D%D%D "、&​​N、&M&K))//用いない卵は、完全に無視することができないK 
52である     {   
 53である          のmemset(A、0はsizeof (A))、
 54である          のmemset(B、0はsizeof (B))、
 55          のためにINT I = 1 ; I <= M。 I ++は{)
 56が             INT ; A、B
 57は、              scanfの(" %Dの%のD "、&​​A、&B);
 58              A [A] [B]は= [B] [A]を= 1 ;
 59          }
 60          のためにINT = I 1、I <= N; I ++ ){
61である             ためINT J = 1。 ; J <= N; J ++ ){
 62は、                 IF(!I = J && {[I] [J])
 63である                      B [I] [I] ++ ;
 64                      B [I] [ J] = - 1 ; // 隣接行列を減算
65                  }
 66              }
 67          }
 68          N- = N- 1。;
 69          LL = ANSの決定基(N-); 
 70          のprintf(" %LLDの\のN- " 、ANS);
 71である     }
 72      リターン 0;
73 }

 

おすすめ

転載: www.cnblogs.com/pangbi/p/11701270.html