题目链接:点击打开链接

题意:

给定n

输出所有n长的字符串c。

c要满足:所有子串都不是回文,且只由字母abc构成。

若方案数>10000则输出一句话。




#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
char a[][4] = {"abc", "acb", "bac", "bca", "cab", "cba"};
int main() {
	int n;
	while (~scanf("%d", &n)) {
		if(n * 6 > 100000) puts("TOO LONG");
		else {
			if(n == 1) {
				printf("a\nb\nc\n");
			} else {
				for(int i = 0; i < 6; i ++) {
					for(int j = 0; j < n; j ++) {
						printf("%c", a[i][j % 3]);
					} puts("");
				}
			}
		}
	}
	return 0;
}