#3498. [GESP二级模拟]空心金字塔大合集

[GESP二级模拟]空心金字塔大合集

题目描述

小杨在美术课上学习绘制空心图形。老师给出两个参数:一个正整数 nn 和一个字符 KK。字符 KK 决定图形的形状与方向,共有四种取值:L(向左)、R(向右)、U(向上)、D(向下)。

  • KKLR 时,输出一个共 2n12n-1 行的空心菱形;
  • KKUD 时,输出一个共 nn 行的空心三角形。

n=5n = 5 时,四种方向对应的图形如下。

KK 等于 L 时,输出尖角朝左的空心菱形:

    *
   **
  * *
 *  *
*   *
 *  *
  * *
   **
    *

KK 等于 R 时,输出尖角朝右的空心菱形:

*
**
* *
*  *
*   *
*  *
* *
**
*

KK 等于 U 时,输出尖角朝上的空心三角形:

    *
   * *
  *   *
 *     *
*********

KK 等于 D 时,输出尖角朝下的空心三角形:

*********
 *     *
  *   *
   * *
    *

请根据给定的 nnKK,输出对应的空心图形。

输入格式

输入一行,包含一个正整数 nn 和一个字符 KK,中间用一个空格分隔。

输出格式

按题目要求输出对应的空心图形。每行末尾换行,行尾不要有多余空格。

样例 #1

2 L
 *
**
 *

样例解释 #1

n=2n = 2KKL,输出 2n1=32n-1=3 行的空心菱形:顶点一个 *,中间一行两个 * 相邻,底部顶点一个 *

样例 #2

3 U
  *
 * *
*****

样例解释 #2

n=3n = 3KKU,输出 n=3n=3 行的空心三角形,底边为 2×31=52 \times 3 - 1 = 5*

数据范围

2n202 \le n \le 20KK 为字符 LRUD 之一。

子任务 分值 测试点 附加约束
11 2525 001005001 \sim 005 KKL
22 006010006 \sim 010 KKR
33 011015011 \sim 015 KKU
44 016020016 \sim 020 KKD

四个子任务相互独立。每个子任务只有在其包含的所有测试点输出都完全正确时,才获得该子任务对应的分数;某一个方向的图形画错,不影响其他方向的得分。