本文主要是介绍kuangbin专题八 SPOJ - HIGH Highways,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题解:
生成树模板题。
题外话:
我好悲哀,现在只会做一些模板题,一遇到经典的题就一脸蒙,而且还看不懂,哎。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
#define LL long long int
const int MAXN=15;
LL B[MAXN][MAXN];
LL determinant(int n)
{LL res=1;for(int i=1;i<=n;i++){for(int j=i+1;j<=n;j++){while(B[j][i]){LL t=B[i][i]/B[j][i];for(int k=i;k<=n;k++){B[i][k]=B[i][k]-B[j][k]*t;swap(B[i][k],B[j][k]);}res=-res;}}if(!B[i][i]) return 0;res=res*B[i][i];}return res;
}
int main()
{int n,m,t;scanf("%d",&t);while(t--){memset(B,0,sizeof(B));scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){int u,v;scanf("%d%d",&u,&v);B[u][u]++,B[v][v]++,B[u][v]=-1,B[v][u]=-1;}LL ans=determinant(n-1);printf("%lld\n",ans);}
}
这篇关于kuangbin专题八 SPOJ - HIGH Highways的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!