#G. 红旗招展

news2024/11/26 12:40:58

Description

小J占山为王有一段时间了,他决定把自己的地盘打扮一下---将各种颜色的旗插在山头上

当然某一座的山头只能用一种颜色的旗。

整个地盘有N个山头,可看成是一棵有N个节点的树。

小J还是有一点艺术细胞的,他不想整个地盘杂乱无章。

于是他规定手下,如果某两座山之间的距离<=2的话,则这两座山不能用同一种颜色的旗

小J一共采购了x种颜色的旗。

请输出方案数,由于答案可能过大,请将其对10^9+7取模。

Format

Input

第一行一个数n,k,含义如题

接下来共有n-1行,两个数u,v表示u和v之间存在一条边

1≤n,x≤1e5,

Output

如题

Samples

输入数据 1

4 3

1 2

2 3

3 4

输出数据 1

6


先定下根的方案数(k种)

dfs递归下去

对于u的第一个子结点v,如果v没有爷爷点,就有k - 1种,如果有就k - 2种。

对于v的兄弟点,则每个点均比它左边的点的方案数少1(因为v的兄弟点根v的距离<=2)

比如:

那么最后答案就是那些节点的方案数之积。注意:如果一个节点的方案数为负数,就直接输出0即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/137307.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes安装ingress-controller

IngressController 1. 安装 1.1 查看ingress-nginx的版本匹配 https://github.com/kubernetes/ingress-nginx/blob/main/README.md#readme 下载配置 wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.2/deploy/static/provider/cloud/de…

【回答问题】ChatGPT上线了!给我推荐20个比较流行的图像实例分割模型

给我推荐20个比较流行的图像实例分割模型 U-Net Mask R-CNN FCN SegNet PSPNet DeepLabv3 DenseASPP LinkNet RefineNet ENet ICNet BiSeNet CRF-RNN GCN Tiramisu FRRN DeepLabv3 PANet MaskLab Hybrid Task Cascade给我推荐20个比较流行的图像实例分割模型源码 好的&#x…

java学习之类变量

目录 一、类变量的引出 需解决的问题 传统代码 代码问题 解决方法 运行结果 二、类变量的内存布局 特点 内存中的位置 三、类变量定义 四、类变量语法 五、访问类变量 六、类变量细节 第一条 第二条 第三条 第四条 第五条 第六条 第七条 一、类变量的引出 需…

PHP8---MySQL扩展

目录 一、MySQL扩展的介绍 二、PHP和MySQL连接的基本操作 &#xff08;1&#xff09;MySQL连接的准备工作 &#xff08;2&#xff09;插入删除操作 三、查询操作 &#xff08;1&#xff09;mysqli_fetch_assoc &#xff08;2&#xff09;mysqli_fetch_row &#xff08;3…

19. 网站响应数据加一个简单的密,就能挡住80%的爬虫,你信吗?

本篇博客我们实现响应加密&#xff0c;由于本案例是JS逆向阶段的第一个案例&#xff0c;所以采用最基础加密手段。 爬虫训练场源码同步仓库为 GitCode 项目采集测试地址&#xff1a;爬虫训练场 爬虫训练场框架搭建Python Flask 端 Base64加密前台解密字符串渲染数据框架搭建 本…

Es之mapping

1&#xff09;、字段类型 2&#xff09;、映射 Mapping&#xff08;映射&#xff09; Mapping 是用来定义一个文档&#xff08;document&#xff09;&#xff0c;以及它所包含的属性&#xff08;field&#xff09;是如何存储和 索引的。比如&#xff0c;使用 mapping 来定义…

深入解析Linux虚拟化KVM-Qemu分析之KVM源码

说明&#xff1a; KVM版本&#xff1a;5.9.1QEMU版本&#xff1a;5.0.0工具&#xff1a;Source Insight 3.5&#xff0c; Visio 1. 概述 从本文开始将开始source code的系列分析了&#xff1b;KVM作为内核模块&#xff0c;可以认为是一个中间层&#xff0c;向上对接用户的控制…

idea中热部署插件JRebel的激活方式

idea中热部署插件JRebel的激活方式 一、打开jrebel 激活面板&#xff0c;如图&#xff1a; 二、选中Team URL&#xff08;connect to online licensing service&#xff09; 1、在上面的框中输入激活的url地址 http://127.0.0.1:8888/132d042c-3b1a-4c45-9044-b7897c3de7882…

遗传算法改进(IGA)+python代码实现

遗传算法改进&#xff08;IGA&#xff09;python代码实现一、变异概率的改进&#xff08;1&#xff09;单点变异&#xff08;2&#xff09;多点变异&#xff08;3&#xff09;选择性的突变概率二、交叉概率的改进三、适应度函数的改进&#xff08;1&#xff09;sigmoid函数&…

PGL 系列(六)node2vec

node2vec DeepWalk存在的问题是比较简单直接,而图结构往往是一个复杂结构,需要考虑很多因素,在深度优先搜索方法之外,还有广度优先搜索,结合以上两种方式可以更好的探索图模型,即node2vec。

华为交换机配置

文章目录网络规划与设计机房连线图PON网络配置网络规划与设计 OLT: 网络光线路终端(Optical Line Terminal) ONU分为两种 MDU&#xff08;Multi-DwellingUnit&#xff0c;多住户单元&#xff09; MDU主要应用于FTTB应用类型下的多个住宅用户的接入&#xff0c;一般具有至少4个…

【JDK工具】jinfo、jps、jstack、jstat、jmap

目录一、前言二、关键工具2.1 jps 显示所有JAVA进程信息1. 参数信息2. 常用命令2.2 jinfo 查看虚拟机配置参数信息1. 查看虚拟机参数 jinfo -flags pid2. 查看虚拟机指定参数 jinfo -flag 具体参数 pid3. 查看环境变量 jinfo -sysprops pid4. 参数列表2.3 jstack1. 能排查哪些问…

springboot整合之Validated参数校验

特别说明&#xff1a;本次项目整合基于idea进行的&#xff0c;如果使用Eclipse可能操作会略有不同&#xff0c;不过总的来说不影响。 springboot整合之如何选择版本及项目搭建 springboot整合之版本号统一管理 springboot整合mybatis-plusdurid数据库连接池 springboot整…

JVM面试大总结

一、汇总 JVM是运行在操作系统之上的&#xff0c;它与硬件没有直接的交互。先说一下JVM的内存区域&#xff0c;当函数开始运行时&#xff0c;JVM拿到自己的内存将自己的内存区域进行了分割&#xff0c;分为五块区域&#xff1a;线程共享的有堆、方法区&#xff0c;线程私有的有…

Hadoop MapReduce 介绍

Hadoop MapReduceMapReduce核心思想设计构思什么是MapReduceMapReduce的特点MapReduce的不足&#xff08;局限性&#xff09;MapReduce组成Hadoop MapReduce实现流程map阶段执行过程Reduce阶段执行过程Shuffle机制Map端ShuffleReducer端的shuffleMapReduce核心思想 MapReduce的…

基于MVC的在线购物系统

摘 要本毕业设计的内容是设计并且实现一个基于net语言的在线购物系统。它是在Windows下&#xff0c;以SQL Server为数据库开发平台&#xff0c;Tomcat网络信息服务作为应用服务器。在线购物系统的功能已基本实现&#xff0c;主要包括首页、个人中心、会员用户管理、商品分类管理…

Mac操作系统配置Git

下载Git mac在安装git时&#xff0c;一般只需要一行指令brew install git 验证Git 在我们安装过Git之后&#xff0c;我们可以输入git --version进行验证。如果我们成功进行了安装之后&#xff0c;我们可以看到下图这样的结果。 配置Gitee 生成密钥对 首先我们通过cd ~/.…

Allegro174版本新功能介绍之Symphony模式下放置器件

Allegro174版本新功能介绍之Symphony模式下放置器件 Allegro在172版本在Symphony模式下,是无法放置器件的,如下图 只有一个Swap的选项 在升级到了174版本的时候,Symphony模式是同样支持放器件的 具体介绍如下 任意打开一个174版本的PCB,选择Start Symphony Server

反射方程的分解、预计算BRDF

反射方程 仔细研究反射方程可以发现BRDF的漫反射kd和镜面反射ks是相互独立的&#xff0c;所以可以将方程分解为两部分&#xff1a; 通过分别积分两部分再求即可得到最终的反射结果。 漫反射部分 仔细观察漫反射积分&#xff0c;我们发现漫反射兰伯特项是一个常数项&#xff08;…

Hadoop YARN

Hadoop YARNYARN的组成YARN3大件的作用MR提交计算程序的过程Scheduler调度策略FIFO Scheduler&#xff08;先进先出调度&#xff09;Capacity Scheduler&#xff08;容量调度&#xff09;Fair Scheduler(公平调度)Hadoop YARN是一个是一个通用资源管理系统和调度平台&#xff0…