[BZOJ4894]天赋

题目大意:

求\(n(n\le300)\)个点的有向图中以\(1\)为根的外向树的个数。

思路:

矩阵树定理。

源代码:

#include<cstdio>
#include<cctype>
#include<algorithm>
inline int getint() {register char ch;while(!isdigit(ch=getchar()));register int x=ch^'0';while(isdigit(ch=getchar())) x=(((x<<2)+x)<<1)+(ch^'0');return x;
}
inline int getdigit() {register char ch;while(!isdigit(ch=getchar()));return ch^'0';
}
const int N=301,mod=1e9+7;
int mat[N][N],in[N];
void exgcd(const int &a,const int &b,int &x,int &y) {if(!b) {x=1,y=0;return;}exgcd(b,a%b,y,x);y-=a/b*x;
}
inline int inv(const int &x) {int ret,tmp;exgcd(x,mod,ret,tmp);return (ret%mod+mod)%mod;
}
inline int matrix_tree(const int &n) {for(register int i=1;i<=n;i++) {for(register int j=1;j<=n;j++) {mat[i][j]=(mat[i+1][j+1]%mod+mod)%mod;}}int ans=1;for(register int i=1;i<=n;i++) {int p=0;for(register int j=i;j<=n;j++) {if(mat[i][j]) p=j;}if(!p) return 0;if(p!=i) {ans=mod-ans;for(register int j=1;j<=n;j++) {std::swap(mat[j][i],mat[j][p]);}}ans=1ll*ans*mat[i][i]%mod;const int t=inv(mat[i][i]);for(register int j=i;j<=n;j++) {mat[i][j]=1ll*mat[i][j]*t%mod;}for(register int j=i+1;j<=n;j++) {if(!mat[j][i]) continue;const int t=mat[j][i];for(register int k=i;k<=n;k++) {mat[j][k]=(mat[j][k]-1ll*mat[i][k]*t%mod+mod)%mod;}}}return ans;
}
int main() {const int n=getint();for(register int i=1;i<=n;i++) {for(register int j=1;j<=n;j++) {mat[i][j]=-getdigit();in[j]-=mat[i][j];}}for(register int i=1;i<=n;i++) {mat[i][i]+=in[i];}printf("%d\n",matrix_tree(n-1));return 0;
}

转载于:https://www.cnblogs.com/skylee03/p/10170709.html

[BZOJ4894]天赋相关推荐

  1. html音乐播放器自动切歌,HTML音乐播放——切歌

    $(function(){ $("#next").click(next); }); // 使用JQuery选择标签,则切歌后两首歌一起播放,用JS挺好 var eBar = doc ...

  2. aka名字_她叫李清照,没有AKA,这是她的专访//关于“天赋”二字,她说……

    她说她太阳狮子.上升天蝎.月亮双子:她说她之前觉得自己挺与众不同的,一直觉得自己是个很有天赋的人,但最近两年看到很多厉害的人之后,就有点懵了:她说她现在会有刚从井底跳出来看到外面世界的感觉,很多时候会 ...

  3. Day 07 艺术家是靠天赋还是努力

    1. 今日话题 Some people believe that it is the innate talents that make a person an artist, While others ...

  4. 2014---努力才是真天赋

        "青春不是指生命的一段时间,而是指一种精神状态.青春意味着在气质上勇敢多于怯懦,冒险进去多于舒适苟安. .人变老不仅由于年岁的增长,更是由于放弃了对理想的追求."      ...

  5. 机器人专用符文_英雄联盟【LOL】手游部分英雄天赋符文和出装推荐

    机器人天赋符文和出装推荐 目前,LOL手游机器人主流天赋点法是主坚决系,副系天赋使用启迪.玩家一定要记得点上余震天赋,这样机器人输出的伤害会更高,而且在拆除塔时也会对塔造成额外的伤害.此外,坚决系的特 ...

  6. visual studio 2005没有chart空间_彭啸专访:2005年的国少跳级生 天赋+汗水造就成功...

    彭啸身高:1.85m体重:70kg位置:后腰.中后卫喜欢的球星:C罗.拉莫斯喜欢的欧洲球队:曼城喜欢的欧洲教练:克洛普喜欢的技术动作:油炸丸子 在入选本期国少集训的6名鲁能球员中,彭啸是身材最高大的, ...

  7. 以大多数人的努力程度之低,根本轮不到去拼天赋

    在过去的三个多月里,每周六一天的心理咨询师的培训课成了我一周中最重要最开心的事情之一.因为国庆节的缘故,从9月中旬到10月中旬培训中心都没有安排课程,因此习惯每周六去上课的我在假期里反而一时颇为不习惯 ...

  8. 成为技术大牛,只能靠天赋吗?

    关于"如何成为术大牛"这个问题,有位鹅厂小伙伴发帖: " 应该怎么完善自己的知识体系,才能成长为技术大牛?像wushi那么牛,真的只能靠天赋么?感觉自己就算码10年代码也 ...

  9. 没有数学天赋是一种什么体验?

    全世界只有3.14 % 的人关注了 爆炸吧知识 虽然我不懂 但我热爱数学 ♪ 没有数学天赋是一种什么体验? 1 看不懂懵逼矩阵 2 小学数学不及格,找了个纹身店,问老板纹个九九乘法口诀多少钱.老板说了 ...

最新文章

  1. docker 报错 /usr/bin/docker-current: Error response from daemon: driver failed programming external
  2. ubuntu mysql 迁移_(最新)ubuntu20.04LTS版迁移mysql8.0数据库的方法
  3. Hotstar赛事直播编码组合优化
  4. jclouds_jclouds的命令行界面
  5. 【LeetCode笔记】617. 合并二叉树(Java、DFS、二叉树)
  6. 【物联网开发实战】- 设备上云方案详解?
  7. cuisineroyale服务器所在位置,cuisine royale进不去怎么办?原因及解决办法分享
  8. SpringCloud的Ribbon负载均衡
  9. 重磅!滴滴全员会宣布过冬:将裁员15% 涉及员工超2000人
  10. python全栈构图_Python全栈-magedu-2018-笔记5
  11. 【珍藏版】长文详解python正则表达式
  12. 下载安装Redis+使用
  13. Membership学习(一) Membership介绍[xgluxv]
  14. 【算法】二叉树遍历算法总结:前序中序后序遍历
  15. A very hard mathematic problem HDU - 4282
  16. iOS游戏开发梦想成真:神奇的GameSalad
  17. 行业领军的高压线性恒流驱动IC,真正长寿的半导体线性IC
  18. 解析MTK获取系统时间函数大全
  19. wifi共享大师,去除弹窗广告。
  20. 科林明伦杯哈理工第九届——分布式服务(概率期望+思维)

热门文章

  1. 修改机器名、IP对arcgis server、portal的影响?
  2. CommonJs和AMD是什么(20170214)
  3. Java程序调用ssh, scp, sftp
  4. Java 用正则表达式 提取目录
  5. sourcesafe管理phpproj文件的补充说明(downmoon)
  6. docker中部署redis主从模式
  7. 8大原因告诉你为什么要使用UPS电源和EPS电源,电气人都知道!
  8. Spring Cloud 学习二(Eureka)
  9. ThroughRain第一次冲刺(每天更新)
  10. C# MVC中返回JSON 对象