华为OD机试真题- 红黑图【2023Q1】【JAVA、Python、C++】

题目描述: 众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻的红色节点。 那我们定义一个红黑图,也就是一张无向图中,每个节点可能有红黑两种颜色,但我们必须保证没有两个相邻的红色节点。 现在给出一张未染色的图,只能染红黑两色,问总共有多少种染色方案使得它成为一个红黑图。 输入描述: 第一行两个数字n m,表示图中有n个节点和m条边。 接下来共计m行,每行两个数字s t,表示一条连接节点s和节点t的边,节点编号为[0,n)。 输出描述: 一个数字表示总的染色方案数。 补充说明: 0 < n < 15 0 <= m <= n * 3 0 <= s, t < n 不保证图连通 保证没有重边和自环 收起 示例1 输入: 3 3 0 1 0 2 1 2 输出: 4 说明: 示例2 输入: 4 3 0 1 1 2 2 3 输出: 8 说明: 示例3 输入: 4 3 0 1 0 2 1 2 输出: 8 说明:
m, n = map(int, input().split())
res = []
sum
经验分享 程序员 微信小程序 职场和发展