【题目描述】
从三个元素的集合[A,B,C]中选取元素生成一个 N 个字符组成的序列,使得没有两个相邻的子序列(子序列长度=2)相同,例:N=5 时 ABCBA 是合格的,而序列 ABCBC 与 ABABC 是不合格的,因为其中子序列 BC,AB 是相同的。
【输入】
N(1<=N<=12)
【输出】
满足条件的 N 个字符的所有序列的总数。
【样例输入】
4
【样例输出】
72
================题解==============
Dfs。
递归枚举序列的每一个点的字符,从1到3,当点数<=3时正常递归,当点数>=3时判断此点及前面3个点所组成的两个相邻子序列是否相同,不同则递归,相同则return。当每次枚举到最后一个点时ans++;return;。