AT_kupc2021_k.Three Coloring
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有 N 面墙。现在要将每面墙涂成红色、绿色或蓝色中的一种颜色。
给出 M 个条件。第 i 个条件由整数 ai,bi 和字符 xi,yi 给出,表示:
- 当第 ai 面墙被涂成颜色 xi 时,第 bi 面墙不能被涂成颜色 yi。
其中,xi,yi 分别为字符 R、G、B 中的一个,分别表示红色、绿色和蓝色。
请计算满足所有 M 个条件的涂色方案有多少种。
输入格式
输入通过标准输入按以下格式给出:
N M
a1 x1 b1 y1
⋮
aM xM bM yM
输出格式
请输出一个整数,表示满足条件的涂色方案数。
输入输出样例
输入#1
2 3 1 R 2 R 1 G 2 R 1 B 2 G
输出#1
6
输入#2
1 0
输出#2
3
输入#3
22 0
输出#3
31381059609
输入#4
4 12 2 R 3 R 1 B 2 B 2 R 3 B 3 R 4 R 1 B 4 G 1 R 3 B 3 G 4 B 2 G 3 G 1 B 2 R 1 G 2 R 1 R 3 G 1 G 3 B
输出#4
13
说明/提示
限制条件
- 1≤N≤22
- 0≤M≤9×2N(N−1)
- 1≤ai<bi≤N
- xi,yi 分别为字符
R、G、B中的一个 - 当 i=j 时,(ai,xi,bi,yi)=(aj,xj,bj,yj)
- N,M,ai,bi 均为整数
样例解释 1
当第 1 面墙被涂成红色时,第 2 面墙可以涂成绿色或蓝色。
当第 1 面墙被涂成绿色时,第 2 面墙可以涂成绿色或蓝色。
当第 1 面墙被涂成蓝色时,第 2 面墙可以涂成红色或蓝色。
因此,总共有 6 种涂色方案。
样例解释 2
无论第 1 面墙涂成哪种颜色,都能满足条件。
样例解释 3
请注意防止溢出。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?