目录
题目
思路
Code
题目
题目内容:
在软件项目开发中,不同版本组件之间会互相引用,组件依赖组件,形成一棵从根节点展开的依赖树。
请对当前项目的组件依赖关系进行分析,按项目组件依赖顺序输出最终有效的组件版本列表。
输出顺序要求从根节点开始,上层组件依赖先输出;如果同层依赖,则父组件先出现的优先输出;父组件相同的按依赖出现顺序输出。
依赖组件如果多次出现,只保留第一次出现的顺序位置。
同一组件如果有不同版本,以首次依赖的组件版本作为输出。
输入描述:
第一行是项目直属依赖 directDeps,格式为 组件名:版本号:排除组件列表。
第二行是全局组件依赖 depRules,格式为 组件名:依赖组件名:依赖组件版本号:排除组件列表。
输入列表顺序为依赖声明顺序。
组件名和版本号由字母数字组成且非空。
排除组件列表以英文逗号分隔,可为空。
输出描述:
输出符合依赖顺序要求的项目依赖组件列表,格式为 组件名:版本号。
多个组件之间用空格分隔。
样例 1
输入:
a:v1:输出:
a:v1说明:
项目仅依