小美是美团总部的高管,她想要召集一些美团的区域负责人来开会,已知美团的业务区域划分可以用一棵树来表示,树上有n 个节点,每个节点 分别代表美团的一个业务区域,每一个区域有一个负责人,这个负责人的级别为A_i 已知小美召集人员开会必须满足以下几个条件: 1.    小美召集的负责人所在的区域必须构成一个非空的连通的图,即选取树上的一个连通子图。 2.    这些负责人中,级别最高的和级别最低的相差不超过k 。 请问小美有多少种召集负责人的方式,当且仅当选取的集合不同时我们就认为两种方式不同 。由于方案数可能非常大,所以请对10^9+7 取模。-笔试面试资料

这是qklbishe.com第8203 篇笔试面试资料
提供答案分析,通过本文《小美是美团总部的高管,她想要召集一些美团的区域负责人来开会,已知美团的业务区域划分可以用一棵树来表示,树上有n 个节点,每个节点 分别代表美团的一个业务区域,每一个区域有一个负责人,这个负责人的级别为A_i 已知小美召集人员开会必须满足以下几个条件: 1.    小美召集的负责人所在的区域必须构成一个非空的连通的图,即选取树上的一个连通子图。 2.    这些负责人中,级别最高的和级别最低的相差不超过k 。 请问小美有多少种召集负责人的方式,当且仅当选取的集合不同时我们就认为两种方式不同 。由于方案数可能非常大,所以请对10^9+7 取模。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:

小美是美团总部的高管,她想要召集一些美团的区域负责人来开会,已知美团的业务区域划分可以用一棵树来表示,树上有n个节点,每个节点分别代表美团的一个业务区域,每一个区域有一个负责人,这个负责人的级别为A_i

已知小美召集人员开会必须满足以下几个条件:

1.    小美召集的负责人所在的区域必须构成一个非空的连通的图,即选取树上的一个连通子图。

2.    这些负责人中,级别最高的和级别最低的相差不超过k

请问小美有多少种召集负责人的方式,当且仅当选取的集合不同时我们就认为两种方式不同。由于方案数可能非常大,所以请对10^9+7取模。

Java

小美是美团总部的高管,她想要召集一些美团的区域负责人来开会,已知美团的业务区域划分可以用一棵树来表示,树上有n 个节点,每个节点 分别代表美团的一个业务区域,每一个区域有一个负责人,这个负责人的级别为A_i         已知小美召集人员开会必须满足以下几个条件:       1.       小美召集的负责人所在的区域必须构成一个非空的连通的图,即选取树上的一个连通子图。       2.       这些负责人中,级别最高的和级别最低的相差不超过k 。        请问小美有多少种召集负责人的方式,当且仅当选取的集合不同时我们就认为两种方式不同 。由于方案数可能非常大,所以请对10^9+7 取模。 区块链毕设学生340512146号

import java.util.*; public class Main{     public static void main(String[] args){         Scanner sc = new Scanner(System.in);         int n = sc.nextInt();         int k = sc.nextInt();         Set<Integer>[]tree = new HashSet[n];         for(int i=0;i<n;i++){             tree[i] = new HashSet<>();         }         for(int i=0;i<n-1;i++){             int a = sc.nextInt()-1;             int b = sc.nextInt()-1;             tree[a].add(b);             tree[b].add(a);         }         int[]r = new int[n];         for(int i=0;i<n;i++){             r[i] = sc.nextInt();         }         long ans = 0;         for(int i=0;i<n;i++){             boolean[]visited = new boolean[n];             long a = dfs(tree,visited,i,r,k,r[i],i);             ans  = (ans+a)%1000000007;         }         System.out.println(ans);     }     public static long dfs(Set<Integer>[]tree,boolean[]visited,int i,int[]r,int k,int k0,int i0){         visited[i] = true;         long a = 1;         for(int j:tree[i]){             if(!visited[j]&&r[j]>=k0&&r[j]-k0<=k&&(r[j]>k0||j<i0))                 a = (a*(1+dfs(tree,visited,j,r,k,k0,i0)))%1000000007;         }         return a;     } }

今天 09:18:23 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 小美是美团总部的高管,她想要召集一些美团的区域负责人来开会,已知美团的业务区域划分可以用一棵树来表示,树上有n 个节点,每个节点 分别代表美团的一个业务区域,每一个区域有一个负责人,这个负责人的级别为A_i 已知小美召集人员开会必须满足以下几个条件: 1.    小美召集的负责人所在的区域必须构成一个非空的连通的图,即选取树上的一个连通子图。 2.    这些负责人中,级别最高的和级别最低的相差不超过k 。 请问小美有多少种召集负责人的方式,当且仅当选取的集合不同时我们就认为两种方式不同 。由于方案数可能非常大,所以请对10^9+7 取模。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情