B3888 [语言月赛 202311] 画图练习
题目描述
为了培养学生的兴趣,洛谷小学的信息课上会教学生使用绘板软件,让学生在电脑上自由创作图画。
小 A 非常喜欢字符画。他打算在课上创作一幅自己的字符画。他的字符画一共有 $n$ 行,绘画规则如下:
- 第 $i$ 行的**非空格的**字符有 $i^2$ 个;
- 第 $i$ 行以**大写**的第 $i$ 个英语字母开头。每一列用其前一**非空格**列的字母的下一个填充。特别地,Z 的下一个字母是 A。
- 如果**当前列数**加上当前本应填充的字母的 ASCII 码**不为**质数,则跳过该列(用空格填充),直到列数加上本应填充的字母的 ASCII 码为质数为止。
请绘画出小 A 的字符画。
输入格式
输入一个正整数 $n$,表示这是一个 $n$ 行的字符画。
输出格式
输出 $n$ 行字符,表示这是小 A 创作的字符画。
说明/提示
**【样例解释】**
对于样例 $1$:
- 第一行应当以第一个大写字母,即 A 开头。但是 A 的 ASCII 码是 $65$,加上列数 $1$,为 $66$,其并不是质数($66=2\times 3\times 11$),因此第一列为空。而第二列,$65+2=67$,为质数,因此在第二列输出 A。此时已经输出了 $1^2$ 个字母,故换行。
- 第二行应当以第二个大写字母,即 B 开头。B 的 ASCII 码是 $66$,加上列数 $1$,为 $67$,为质数。因此第一列就输出 B。随后应当输出下一个英语字母 C。C 的 ASCII 码为 $67$,加上列数 $2$,为 $69=3\times 23$,不为质数,用空格跳过。而直到第四列,$67+4=71$ 为质数,因此在第四列输出 C。同理,在第五列输出 D,在第 $10$ 列输出 E。
对于样例 $2$:
- 该样例的第五第六行体现了 Z 的下一个字母是 A。
**【数据范围】**
对于所有数据,$1\leq n\leq 26$。