AT_abc029_c [ABC029C] Brute-force Attack
题目描述
你是一名超级黑客。你将高桥君作为攻击目标,并且你已经查明了高桥君电脑密码的以下事实:
- 密码长度为 $N$ 个字符。
- 密码只包含 `a`、`b`、`c` 这三种字符,不包含其他字符。
请将所有可能作为高桥君电脑密码的字符串全部枚举出来。
输入格式
输入通过标准输入按以下格式给出。
> $N$
- 第 $1$ 行给出密码的长度 $N$,满足 $1 \leq N \leq 8$。
输出格式
请将满足题目中两个条件的所有字符串,每行输出一个,按字典序排列。
关于“字典序”的定义,请参见样例 2 的注释。
最后一个字符串后面也要输出换行符。大写字母和小写字母是区分的。
说明/提示
### 样例 2 说明
(※)对于由小写英文字母组成且长度相同的不同字符串 $s$ 和 $t$,如果存在某个整数 $i$($1 \leq i \leq |s| = |t|$),使得从第 $1$ 个字符到第 $i-1$ 个字符(包括两端)$s$ 和 $t$ 都相同,但第 $i$ 个字符不同,且 $s$ 的第 $i$ 个字符在字母表中排在 $t$ 的第 $i$ 个字符之前,则 $s$ 的字典序在 $t$ 之前。否则,$s$ 的字典序在 $t$ 之后。例如,`cab**a**c` 的字典序在 `cab**c**a` 之前(取 $i=4$ 时条件成立)。
由 ChatGPT 4.1 翻译