小红遇到了一名粉刷匠。这名粉刷匠有三种颜料,分别是红、黄、蓝。为了方便,这三种颜料分别命名为A、B、C。
现在,粉刷匠正在粉刷一面长度为3n的墙壁。粉刷完毕之后,三种颜料的数目都相同。由于小红不小心踢倒了颜料桶,使得这面墙的每一个地方都染上了三种颜料中的其中一种,这很让粉刷匠头疼。
粉刷匠每次可以选择一段连续的墙壁进行粉刷,即全部粉刷上同一种颜色(A、B、C三种中的其中一种)。粉刷匠想知道,他最少需要多少次粉刷才能使得三种颜料的数目都相同?
输入: 3 # 表示有几组数据 2 # 墙壁长度为3n,在这里则是 3 * 2 = 6 ABACBC 3 AAABBBBAC 3 CAACBCBCC 输出: 0 1 2
对于第一组样例,A、B、C的数目都是2,故无需进行粉刷
对于第二组样例,选择区间[7,9]全部粉刷为C,之后形成的墙壁为 AAABBBCCC
对于第三组样例,先选择区间[4,4]粉刷为B之后形成的墙壁为CAABBCBCC,在选择区间[9,9]全部粉刷为A之后形成的墙壁为CAABBCBCA,此刻每种颜色都有3个。