#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 20;
const int mod = 1e+9 + 7;
namespace mat {
int a[N][N];
int n,p=1;
void Clear() {
memset(a,0,sizeof a);
}
int Solve() {
int ans = 1;
for(int i = 1; i < n; i ++) {
for(int j = i + 1; j < n; j ++)
while(a[j][i]) {
int t = a[i][i] / a[j][i];
for(int k = i; k < n; k ++)
a[i][k] = (a[i][k] - t * a[j][k] + mod) % mod;
swap(a[i], a[j]);
ans = - ans;
}
ans = (ans * a[i][i]) % mod;
}
return (ans + mod) % mod;
}
void Make(int p,int q) {
a[p][q]--;
a[q][p]--;
a[p][p]++;
a[q][q]++;
}
} // namespace mat
int n;
vector <pair<int,int> > v[N];
signed main() {
ios::sync_with_stdio(false);
cin>>n;
for(int i=1;i<n;i++) {
int t;
cin>>t;
for(int j=1;j<=t;j++) {
int t1,t2;
cin>>t1>>t2;
v[i].push_back(make_pair(t1,t2));
}
}
int ans = 0;
mat::n=n;
for(int i=0;i<1<<(n-1);i++) {
int t=__builtin_popcount(i);
mat::Clear();
for(int j=1;j<=(n-1);j++) {
if(i&(1<<(j-1))) {
for(int k=0;k<v[j].size();k++) {
mat::Make(v[j][k].first, v[j][k].second);
}
}
}
int tmp = mat::Solve();
ans += ((n-t-1)%2 ? -1 : 1)*tmp;
ans %= mod;
ans += mod;
ans %= mod;
}
cout<<ans<<endl;
}

最新文章

  1. Windows驱动——虚拟机 虚拟串口 双机调试
  2. MyBatis学习(四)、MyBatis配置文件
  3. sqlserver 批量删除存储过程和批量修改存储过程的语句
  4. 最新中国IP段获取办法与转成ROS导入格式
  5. ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解
  6. db2日期和时间常用汇总
  7. IOS 改变导航栏返回按钮的标题
  8. win7进入不了系统故障修复
  9. Git diff (---和+++具体解释)
  10. C# 经典排序算法大全
  11. PHPCMS V9表单向导调用及分页
  12. struts.xml如何加载到及配置问题
  13. 一起学习Hibernate: Hibernate01 —— Hibernate的概述与入门案例
  14. maven常见问题处理(3-3)Gradle编译时下载依赖失败解决方法
  15. Docker 镜像
  16. (十一) UVC调节亮度
  17. pythonのdjango 信号
  18. 46-web页面登入前和登入后控制
  19. 在Visual Studio代码中使用Flask
  20. PHP中require(),include(),require_once()和include_once()有什么区别

热门文章

  1. P1217 [USACO1.5]回文质数 Prime Palindromes(stringstream,sizeof(num)/sizeof(num[0]),打表)
  2. Navicat Premium15安装与激活(破解)
  3. Spring Aop和Spring Ioc(二)
  4. Net Core使用Lucene.Net和盘古分词器 实现全文检索
  5. Jquery实现挂号平台首页源码
  6. 嵊州D6T2 城市 city
  7. [THUSC2016]成绩单 [区间dp]
  8. Beego的参数配置
  9. hdu 1005 Number Sequence(循环节)
  10. 0级搭建类003-CentOS Linux安装 (CentOS 7)公开