多校第七场 1011 hdu 5379 Mahjong tree(树形dp)
来源:互联网 发布:微信交友源码 编辑:程序博客网 时间:2024/06/14 09:32
AC代码:
#pragma comment(linker, "/STACK:102400000,102400000")#include <iostream>#include <cstring>#include <algorithm>#include <cstring>#include <vector>#define MAX 100007using namespace std;typedef long long LL;vector<int> e[MAX];const LL mod = 1e9+7;LL dp[MAX];LL fac[MAX];int t,n,x,y;void add ( int u , int v ){ e[u].push_back ( v ); e[v].push_back ( u );}void init ( ){ for ( int i = 0 ; i < MAX ; i++ ) e[i].clear();}void dfs ( int u , int p ){ int num = 0, total = 0; dp[u] = 1; for ( int i = 0 ; i < e[u].size() ; i++ ) { int v = e[u][i]; if ( v == p ) continue; else total++; dfs ( v , u ); if ( e[v].size() == 1 ) num++; dp[u] *= dp[v]; dp[u] %= mod; } if ( total == 0 ) return; dp[u] *= fac[num]; dp[u] %= mod; if ( total - num < 2 ) { dp[u] *= 2LL; dp[u] %= mod; } if ( total - num > 2 ) dp[u] = 0;}int main ( ){ scanf ( "%d" , &t ); fac[0] = 1; for ( LL i = 1 ; i < MAX ; i++ ) { fac[i] = fac[i-1]*i; fac[i] %= mod; } int cc = 1; while ( t-- ) { init (); scanf ( "%d" , &n ); for ( int i = 1 ; i < n ; i++ ) { scanf ( "%d%d" , &x , &y ); add ( x , y ); } dfs ( 1 , -1 ); printf ( "Case #%d: " , cc++ ); printf ( "%I64d\n" , dp[1] ); }}
0 0
- 多校第七场 1011 hdu 5379 Mahjong tree(树形dp)
- hdu 5379Mahjong tree 树形dp
- hdu 5379 Mahjong tree(树形dp)
- hdu 5379 Mahjong tree 树形DP入门
- HDU 5379(Mahjong tree-树形dp统计标号)
- hdu5379 Mahjong tree DFS 多校联合第七场
- HDOJ 5379 Mahjong tree 树形DP
- hdu5379 Mahjong tree 树形DP
- 多校第十场 1011 hdu 5416 CRB and Tree(树形dp)
- hdu Mahjong tree 树dp
- HDU 5379 Mahjong tree
- hdu 5379 Mahjong tree
- HDU 5379 Mahjong tree
- 多校第一场 1006 hdu 5293 Tree chain problem(离线LCA+时间戳+树形dp)
- hdu 5293 Tree chain problem(15多校第一场1006)(树形dp+树状数组+LCA)
- HDU 6035(2017多校第一场)。color tree (树形dp)
- 多校第七场 1010 hdu 5378 Leader in Tree Land(概率dp)
- hdu 5379 Mahjong tree dfs
- 合成复用原则
- NSIS 自定义安装界面准确获取安装进度完美解决方案
- Java ClassLoader基础及加载不同依赖 Jar 中的公共类
- html5 表单
- 黑马程序员----------------java基础-----------------Map集合
- 多校第七场 1011 hdu 5379 Mahjong tree(树形dp)
- hdu1075(trie树)
- 通用权限拦
- 六大原则
- poj 1080 LCS 应用
- jQuery_统计图插件-visifire
- 图像视觉各个领域文献目录
- 使用MFC操作EXCEL文件
- 左滑关闭demo