博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C. Edgy Trees
阅读量:4647 次
发布时间:2019-06-09

本文共 1027 字,大约阅读时间需要 3 分钟。

链接

[]

题意

给你n个点,n-1个边,无向的。有red和black的。

k表示经过这k个点。可以跨其他点

分析

1342501-20190322133528544-834342413.png

先算所有的,再减去不符合即可以了。不符合就是都走0的那种

用dfs求联通块并记录该块有多少个点就可以了,看代码吧

代码

#include
using namespace std;#define ll long longconst int N=2e5+10;const ll mod=1e9+7;ll po(ll x,ll y){ ll ba=x,ans=1; while(y){ if(y&1) ans=(ans*ba)%mod; ba=(ba*ba)%mod; y>>=1; } return ans;}vector
ve[N];bool vis[N];ll cnt;void dfs(int i){ if(vis[i]) return; vis[i]=1; cnt++; for(int j=0;j
>n>>k; int u,v,x; memset(vis,0,sizeof(vis)); for(int i=1;i
>u>>v>>x; if(x==0) ve[u].push_back(v),ve[v].push_back(u); } ll sum=po(n,k); for(int i=1;i<=n;i++) { cnt=0; if(!vis[i]) { dfs(i); sum-=po(cnt,k); sum+=mod; sum%=mod; } } cout<
<

转载于:https://www.cnblogs.com/mch5201314/p/10577708.html

你可能感兴趣的文章
FEM计算2D瞬态热传导方程
查看>>
四年时光,匆匆而过
查看>>
【php】【psr】psr1 基础编码规范
查看>>
WAF SSI
查看>>
LDAP & it's implementation
查看>>
Apache HttpComponents中的cookie匹配策略
查看>>
冰封的海盗攻略
查看>>
Netty4.x中文教程系列(四) 对象传输
查看>>
linux下find命令使用举例、
查看>>
GET请求在Tomcat中的传递及URI传递
查看>>
ubuntun 服务器与Mac
查看>>
重温JSP学习笔记--与日期数字格式化有关的jstl标签库
查看>>
java-Date-DateFormat-Calendar
查看>>
封装CLLocationManager定位获取经纬度
查看>>
我的第一篇博客-(Eclipse中或Myeclipse中如果不小心删除了包那可怎么办?)
查看>>
对easyui datagrid组件的一个小改进
查看>>
类似以下三图竞争关系的IT企业
查看>>
清明节
查看>>
ubuntu如何安装svn客户端?
查看>>
javascript之非构造函数的继承
查看>>