博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Facer的程序
阅读量:6654 次
发布时间:2019-06-25

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

题目描述

Facer是一个萌萌哒的码农

他写了N个程序

程序之间是有 有机的联系的

任意两个程序恰好由1条联系链连在一起

具体来说,对于程序a,b , 存在且仅存在一个序列a,x1,x2....xn,b

使得a,x1有联系,x1,x2有联系.....

符合这样的一组程序称为程序块

现在已知一个程序块的程序之间的联系

询问它有多少个子程序块

即取出一个程序子集S,使得S也满足上述条件

输入输出格式

输入格式:

 

第一行N

接下来N-1行,每行两个数,代表有联系的两个程序

 

输出格式:

 

输出有多少个子程序块

对1000000007取模

 

输入输出样例

输入样例#1: 
31 22 3
输出样例#1: 
6

说明

样例解释:

子集(1),(2),(3),(1,2),(2,3),(1,2,3)满足

对于 10%的数据 1 <= N <= 20

对于 40%的数据 1 <= N <= 500

对于 100%的数据 1 <= N <= 100000

#include
#define REP(i, a, b) for(int i = (a); i <= (b); ++ i)#define REP(j, a, b) for(int j = (a); j <= (b); ++ j)#define PER(i, a, b) for(int i = (a); i >= (b); -- i)using namespace std;const int maxn=2e6+666;template
inline void rd(T &ret){ char c; ret = 0; while ((c = getchar()) < '0' || c > '9'); while (c >= '0' && c <= '9'){ ret = ret * 10 + (c - '0'), c = getchar(); }}const int mod=1e9+7;int head[maxn],tot;long long dp[maxn][2];struct node{ int u,v,nx;}p[maxn];void addedge(int u,int v){ p[++tot].v=v,p[tot].nx=head[u],head[u]=tot;}void dfs(int u,int fa){ dp[u][1]=1; for(int i=head[u];i;i=p[i].nx){ int to=p[i].v; if(to==fa)continue; dfs(to,u); dp[u][0]=(dp[u][0]+dp[to][1]+dp[to][0])%mod; dp[u][1]=dp[u][1]*(1+dp[to][1])%mod; }}int main(){ int n; rd(n); REP(i,1,n-1){ int x,y; rd(x),rd(y); addedge(x,y),addedge(y,x); } dfs(1,0); cout<<(dp[1][0]+dp[1][1])%mod<

 

转载于:https://www.cnblogs.com/czy-power/p/10413841.html

你可能感兴趣的文章
Oracle笔记 三、function 、select
查看>>
MySQL的左外连接
查看>>
Qt OpenGL:学习现代3D图形编程之四,透视投影浅析
查看>>
android 49 广播接收者中启动其他组件
查看>>
PHP5.5面向对象连接mysqli
查看>>
《CLR Via C# 第3版》笔记之(十二) - 事件
查看>>
设计模式学习起点 UML类图笔记
查看>>
索引使用注意
查看>>
Spring-Boot - 初步搭建
查看>>
SQL Server 触发器
查看>>
00.Web大前端时代之:HTML5+CSS3入门系列~Bug反馈文章
查看>>
设计模式之十:观察者模式(Observer)
查看>>
一步一步教你使用AgileEAS.NET基础类库进行应用开发-WinForm应用篇-在UI中应用DataUIMapper组件...
查看>>
Linux 内核进程管理之进程ID【转】
查看>>
Objective-C:随机的读取文件中的内容
查看>>
Linux命令大全
查看>>
观察者模式2
查看>>
[ACM_图论] Sorting Slides(挑选幻灯片,二分匹配,中等)
查看>>
[Java基础] Java线程复习笔记
查看>>
ASP.NET MVC5+EF6+EasyUI 后台管理系统(22)-权限管理系统-模块导航制作
查看>>