题意:中文题面自行理解

思路:处理出每块由红色边连成的连通块的点个数,ans=总方案数-所有只有红边相连的块的总方案数+只有黑边与之相连的点个数

代码:

#include<bits/stdc++.h>
using namespace std;
#define LL long long
const int maxn=1e5+10;
const LL mod=1e9+7;
int n,k;
map<int,int> mp;
vector<int> vec[maxn],tmp;///tmp:所有只有红色边连成的连通块的点个数
int book[maxn];///标记点是否只有黑边与之相连
int fun(int x)
{mp[x]=1;queue<int> que;int ans=1;que.push(x);while(que.size()){int p=que.front();que.pop();for(int i=0;i<vec[p].size();i++){if(mp[vec[p][i]]==0){que.push(vec[p][i]);mp[vec[p][i]]=1;ans++;}}}return ans;
}
LL cal(int x)
{x=(LL)x;LL ans=1ll;for(int i=1;i<=k;i++){ans=(ans*x)%mod;}return ans;
}
int main()
{scanf("%d%d",&n,&k);int u,v,w;for(int i=1;i<n;i++){scanf("%d%d%d",&u,&v,&w);if(w==0){vec[u].push_back(v);vec[v].push_back(u);book[v]=1;book[u]=1;}}for(int i=1;i<=n;i++){for(int j=0;j<vec[i].size();j++){if(mp[vec[i][j]]) continue;tmp.push_back(fun(vec[i][j]));}}LL ans=cal(n);for(int i=1;i<=n;i++){if(book[i]==0){ans=(ans-1+mod)%mod;}}for(int i=0;i<tmp.size();i++){ans=(ans-cal(tmp[i])+mod)%mod;}printf("%lld\n",ans);return 0;
}

快手2020校园招聘秋招笔试--工程A试卷 题4相关推荐

  1. 快手2020校园招聘秋招笔试--工程B试卷

    攻击者使用无效IP地址,利用TCP连接的三次握手过程,连续发送会话请求,使受害主机处于开放会话的请求之中,直至连接超时,最终因耗尽资源而停止响应.这种攻击被称为 A. DNS欺骗攻击 B. DDoS攻 ...

  2. 快手2020校园招聘秋招笔试--工程C试卷 (编程题题解全)

    1.病毒检测 滑动窗口题 例子: 2 0101010(第一位下标为1) 1)找到第一个最短的满足k条件的子串,即s[2~4],l=2,r=4 2)找出这个子串左右连续的0的个数,分别为a,b,则对于这 ...

  3. 快手2020校园招聘秋招笔试--工程A试卷 (编程题题解全)

    "好序列"的个数 反着求,先求出所有序列个数,再减去不符合的个数. 黑边把图分成一个,一个的连通分量. 所以我们只要用dfs求出每个不包含黑边的连通分量的包含点个数sz,sz^k就 ...

  4. 快手2020校园招聘秋招笔试--工程A试卷

    1.(计算机网络原理)若用斜杠记法标识子网掩码,则255.255.240.0对应于 B A. /19 B. /20 C. /21 D. /22 解析 255.255.240.0转换为二进制为11111 ...

  5. 快手2020校园招聘秋招笔试--工程B试卷 订正

    1.三种攻击 DNS欺骗攻击:冒充域名 把原来查询的IP改为其他IP ddos攻击:大量合法的服务器向某一目标不断发送请求,导致其他用户无法使用 SYN Flooding攻击:攻击者使用无效IP地址 ...

  6. 快手2020校园招聘秋招笔试--工程C试卷

    1. 关于java的异常处理机制,以下说法正确的是: A. 当某个线程抛出OutOfMemoryError时,其他线程有可能不受影响 B. 当大量抛出RuntimeException时,不会影响系统的 ...

  7. 快手2020校园招聘秋招笔试--工程C试卷(21题)滑动窗口解决字串

    病毒检测 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 小明最近在做病毒自动检测,他发现,在某些library 的代码段的二进制表示中,如果包含子串并且恰好有 ...

  8. 渣渣做后端真题-- 快手2020校园招聘秋招笔试--工程A试卷 选择题

    真的是一枚渣渣,题在牛客网找的,有错误求大神指导,求一起做题的小伙伴,没写的题是我会的,有问题可以给我留言呀- A:记忆小Tips:4** 没有402(阿玛尼红管402 ,一只鲜艳的苹果红),5** ...

  9. 快手2020校园招聘秋招笔试--算法B试卷

    四个编程题总体算比较简单,基本都在LeetCode出现过.但是我的速度太慢了,还要加油啊ヾ(◍°∇°◍)ノ゙ 牛客快手2020校园招聘秋招笔试–算法B试卷 合法数独 给定一个数独板的输入,确认当前的填 ...

最新文章

  1. 前、后端分离权限控制设计和实现思路
  2. AIX 5.3安装Oracle 10g错误案例--ruInstaller
  3. 学好python薪水有多少笔画_Python学到什么程度可以面试工作?
  4. 关于silverlight+MVVM+WCF保存数据出错的问题
  5. python实现b树_B树及2-3树的python实现
  6. codeforces 938E MaxHistory 组合数学
  7. sidecar_Spring Cloud Sidecar –节点初始化
  8. nyoj_66_分数拆分_201312012122
  9. Elasticsearch集群配置以及REST API使用
  10. ps教程完整版(来自百度网盘)
  11. cocos2d-android基础教程
  12. 电脑html5播放黑屏,电脑看视频黑屏,教您电脑看视频黑屏有声音怎么办
  13. 如何用VBA制作工资条
  14. 教程:个人深度学习工作站配置指南
  15. 关于Python中以字母r/R,或字母u/U 开头的字符串
  16. 无线传感网络的自适应协作数据传输方法
  17. 百度AI攻略:EasyDL专业版
  18. 基于java的华容道小游戏
  19. 多模态学习研究进展综述
  20. ABC157 D - Friend Suggestions 题解

热门文章

  1. 计算机会计期末考试试题题量及构成,计算机会计
  2. 南京理工计算机专业复试科目,南京理工大学计算机考研复试全攻略
  3. 了解串口协议,及完成STM32的USART串口通讯程序,并用keil观察波形
  4. win10+ubuntu的坑
  5. Java背景颜色怎么设成随机的_java - 如何将按钮的背景设置为具有设置约束的随机颜色? - SO中文参考 - www.soinside.com...
  6. 【机器学习--朴素贝叶斯与SVM进行病情分类预测】
  7. 高中数学必修2:平面解析几何——椭圆(经典习题)
  8. 原创/自译教程:并没什么卵用的移动端UI姿势(原创文章)
  9. VM虚拟机无法安装WIN7系统,出现“start booting from cd”
  10. 人工智能科技成熟的11个Github上免费开源项目,很多电影中才有的场景应用到现实颠覆普通人的认知和想象