给树的点染色,颜色有3种,相邻的点颜色不同

某些点已经染色

方案数?

#include <bits/stdc++.h>using namespace std ;const int N=1e5+2,M=5*N;#define int long longconst int mod=1e9+7;int f[N][4],n;int nxt[M],go[M],hd[N],all;void add(int x,int y){go[++all]=y,nxt[all]=hd[x];hd[x]=all;}void dfs(int x,int fa){int i;for(i=1;i<=3;i++){          if(f[x][i]){for(int j=1;j<i;j++) f[x][j]=0;break;} f[x][i]=1;}for(i=hd[x];i;i=nxt[i]){int y=go[i]; if(y==fa) continue; dfs(y,x);f[x][1]=f[x][1]*(f[y][2]+f[y][3]);f[x][2]=f[x][2]*(f[y][1]+f[y][3]);f[x][3]=f[x][3]*(f[y][1]+f[y][2]);f[x][1]%=mod;f[x][2]%=mod;f[x][3]%=mod;}}signed main(){int i,x,y,K;cin>>n>>K;for(i=1;i<n;i++) cin>>x>>y,add(x,y),add(y,x);for(i=1;i<=K;i++) cin>>x>>y,f[x][y]=1;dfs(1,0);cout<<(f[1][1]+f[1][2]+f[1][3])%mod<<endl;}

luogu 4084相关推荐

  1. luogu P1549 棋盘问题(2) 题解

    luogu P1549 棋盘问题(2) 题解 题目描述 在\(N * N\)的棋盘上\((1≤N≤10)\),填入\(1,2,-,N^2\)共\(N^2\)个数,使得任意两个相邻的数之和为素数. 例如 ...

  2. [Luogu] 选学霸

    https://www.luogu.org/problemnew/show/P2170 并查集+DP #include <iostream> #include <cstring> ...

  3. Luogu 2470 [SCOI2007]压缩

    和Luogu 4302 [SCOI2003]字符串折叠 差不多的想法,区间dp 为了计算方便,我们可以假设区间[l, r]的前面放了一个M,设$f_{i, j, 0/1}$表示区间$[i, j]$中是 ...

  4. 【Luogu】P1613 跑路

    [Luogu]P1613 跑路 一.题目 题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资 ...

  5. Luogu P6055 [RC-02] GCD(莫比乌斯反演,杜教筛)(这题乐死我了,真就图一乐呗)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://www.luogu.com.cn/problem/P6055 Prob ...

  6. Luogu P3177 [HAOI2015] 树上染色(树上背包)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Luogu P3177 [HAOI2015] 树上染色 有一棵点数为 NNN 的树,树边有边权.给你一 ...

  7. Luogu P4178 Tree (点分治 + 树状数组)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://www.luogu.com.cn/problem/P4178 Prob ...

  8. Luogu P4336 [SHOI2016]黑暗前的幻想乡(容斥,矩阵树定理,子集反演)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Luogu P4336 [SHOI2016]黑暗前的幻想乡(容斥,矩阵树定理) Problem n≤1 ...

  9. BZOJ 2154 [国家集训队]Crash的数字表格 / JZPTAB(莫比乌斯反演,经典好题)(Luogu P1829)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P1829 [国家集训队]Crash的数字表格 / JZPTAB(反演,经典好题) Problem S ...

最新文章

  1. 机器学习实战读书笔记(一)机器学习基础
  2. BZOJ 4802: 欧拉函数(大数因数分解算法 Pollard_rho 和素数测试算法 Miller_Rabin)
  3. nfs linux系统服务,Linux系统服务搭建之NFS
  4. 新手上路之django项目开发(二)-----引入静态文件
  5. android 框架_AOP编程_Android优雅权限框架(2)Demo完全解析
  6. Gitlab备份、升级、恢复
  7. oracle 创建表格乱码,数据库导出excel表格是乱码怎么办-oracle 导出excel 乱码怎么办...
  8. 462计算机连接错误,金蝶K3始终462错误,怎么处理???????
  9. 什么是SoC?什么是IP核?它们有什么关系?
  10. SciPy 科学计算基础
  11. 电脑重装系统win10家庭版重装教程分享
  12. 汉语语法与人工智能---数据结构+汉语语法
  13. 第11.27节 Python正则小结:正则静,静则明,明则虚,虚则无为而无不为也
  14. 游戏‘微信打飞机 第一课
  15. 第三方yum源rpmforge
  16. strtodate mysql_MySQL str_to_date()函数
  17. seo vue 动态路由_基于Vue SEO的四种方案
  18. 我为什么要累死自己不挣钱?
  19. 2023美赛E题程序建模思路
  20. 十分钟计算机说课稿,我的十分钟说课稿

热门文章

  1. Postgresql中,计算两个日期月份差值或年月日,实现Oracle中months_between、add_months的效果
  2. 百度登陆协议分析!!!用libcurl来模拟百度登陆
  3. 4.10nbsp;经济周期和经济危机
  4. 渲染系列--图像渲染过程
  5. 华为“天才少年” DIY 生日礼物:四个月打造能缝葡萄的机械臂!
  6. ul和ol的区别以及经验总结
  7. 解决微信小程序主包太大问题
  8. 计算机科学与技术 美国 研究生 gpa3.5 托福100,历年录取数据告诉你:美国研究生申请TOEFL、GRE、GPA需要考多少分?...
  9. [教程]HP Envy J/K/Q/N系列Haswell平台 Clover引导安装黑苹果
  10. 如何从Linux下载一个文件到本地