spoj high
matrixtree定理裸体,学了行列式的n^3解法,(应该是能应用于所有行列式);
代码是参考某篇题解的。。。
- #include<iostream>
- #include<cstring>
- #include<cmath>
- #include<cstdio>
- #include<algorithm>
- using namespace std;
- typedef long long ll;
- int ss,x,y,T,n,m,du[];
- ll g[][];
- double ans,c[][],d[][];
- bool zero(double x){return (x>?x:-x)<1e-;}
- double guass(){
- int i,j,k;
- ss=;ans=;
- for(i=;i<n;++i)
- for(j=;j<n;++j)d[i][j]=c[i][j];
- for(i=;i<n;++i){
- if(zero(d[i][i])){
- for(j=i+;j<n;++j)
- if(!zero(d[j][i]))break;
- if(j==n)return ;
- for(k=i;k<n;++k)swap(d[i][k],d[j][k]);
- ss++;
- }
- ans*=d[i][i];
- for(int k=i+;k<n;++k)d[i][k]/=d[i][i];
- for(int j=i+;j<n;++j)
- for(int k=i+;k<n;++k)
- d[j][k]-=d[j][i]*d[i][k];
- }
- return abs(ans);
- }
- int main(){
- cin>>T;
- while(T--){
- memset(g,,sizeof(g));
- memset(c,,sizeof(c));
- memset(du,,sizeof(du));
- cin>>n>>m;
- for(int i=;i<=m;++i){
- scanf("%d%d",&x,&y);
- g[x][y]=g[y][x]=;
- du[x]++;du[y]++;
- }
- for(int i=;i<=n;++i)c[i][i]=du[i];
- for(int i=;i<n;++i)
- for(int j=;j<n;++j){
- c[i][j]=c[i][j]-g[i][j];
- }
- printf("%0.0lf\n",guass());
- }
- system("pause");
- return ;
- }
spoj high的更多相关文章
- BZOJ 2588: Spoj 10628. Count on a tree [树上主席树]
2588: Spoj 10628. Count on a tree Time Limit: 12 Sec Memory Limit: 128 MBSubmit: 5217 Solved: 1233 ...
- SPOJ DQUERY D-query(主席树)
题目 Source http://www.spoj.com/problems/DQUERY/en/ Description Given a sequence of n numbers a1, a2, ...
- SPOJ GSS3 Can you answer these queries III[线段树]
SPOJ - GSS3 Can you answer these queries III Description You are given a sequence A of N (N <= 50 ...
- 【填坑向】spoj COT/bzoj2588 Count on a tree
这题是学主席树的时候就想写的,,, 但是当时没写(懒) 现在来填坑 = =日常调半天lca(考虑以后背板) 主席树还是蛮好写的,但是代码出现重复,不太好,导致调试的时候心里没底(虽然事实证明主席树部分 ...
- SPOJ bsubstr
题目大意:给你一个长度为n的字符串,求出所有不同长度的字符串出现的最大次数. n<=250000 如:abaaa 输出: 4 2 1 1 1 spoj上的时限卡的太严,必须使用O(N)的算法那才 ...
- 【SPOJ 7258】Lexicographical Substring Search
http://www.spoj.com/problems/SUBLEX/ 好难啊. 建出后缀自动机,然后在后缀自动机的每个状态上记录通过这个状态能走到的不同子串的数量.该状态能走到的所有状态的f值的和 ...
- 【SPOJ 1812】Longest Common Substring II
http://www.spoj.com/problems/LCS2/ 这道题想了好久. 做法是对第一个串建后缀自动机,然后用后面的串去匹配它,并在走过的状态上记录走到这个状态时的最长距离.每匹配完一个 ...
- 【SPOJ 8222】Substrings
http://www.spoj.com/problems/NSUBSTR/ clj课件里的例题 用结构体+指针写完模板后发现要访问所有的节点,改成数组会更方便些..于是改成了数组... 这道题重点是求 ...
- SPOJ GSS2 Can you answer these queries II
Time Limit: 1000MS Memory Limit: 1572864KB 64bit IO Format: %lld & %llu Description Being a ...
- SPOJ 3273
传送门: 这是一道treap的模板题,不要问我为什么一直在写模板题 依旧只放代码 Treap 版 //SPOJ 3273 //by Cydiater //2016.8.31 #include < ...
随机推荐
- Await Async和Thread.waitAll想法?未完待续
[管理员]四九-李冰-修行者(2216529884) 2017/7/3 17:15:12 看着就可以了,这种东西是有使用场景的.并不是你用了就一定有提升的 [管理员]上海-xx科技(lovepoint ...
- org.springframework.web.util.Log4jWebConfigurer
org.springframework.web.util.Log4jWebConfigurer @Deprecated Deprecated. as of Spring 4.2.1, in favor ...
- Andriod ----配置环境变量
注意:跟java相关的目录不要有中文和空格. 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:D:\Java ...
- Codeforces559C Gerald and Giant Chess
一道计数类\(DP\) 原题链接 我们可以先计算从左上角到右下角总的路径,再减去经过黑色方格的路径即是答案. 总路径数可以用组合数直接计算:\(C_{H+W-2}^{H-1}\) 因为从左上角到右下角 ...
- IOS 将图片转换为圆角图
UIImage+wiRoundedRectImage.h #import <UIKit/UIKit.h> @interface UIImage (wiRoundedRectImage) + ...
- nodejs 如何操作字节在内存中的位置问题 BE LE
上代码 function testNumber() { var arr = new Int32Array(1); arr[0] = 1234; var buf1 = Buffer.from(arr); ...
- Eclipse生成部署描述符(web.xml)
右键点击你的web项目名--->Java EE Tools-->Generate Deployment Descriptor Stub 要想自动生成,只需在创建web项目时,把最后一页的 ...
- Python学习1 基础数据类型
一.字符串 1.去除首尾字符 str_test = 'Hello World!' str_test.split()#将字符串分割为列表str_test. ...
- Wordvec_句子相似度
import jiebafrom jieba import analyseimport numpyimport gensimimport codecsimport pandas as pdimport ...
- GOIP connects with Elastix through “config by line”
GOIP connects with Elastix through “config by line” By grace Liu on May 17, 2013 in Elastix, Gateway ...