AKOJ正在加载中...

5404: 春节烟花模拟

金币值:2 定数:1 时间限制:1.000 s 内存限制:128 M
正确:0 提交:9 正确率:0.00% 命题人:
点赞量:0 收藏量:0 题目类型:程序 知识点: AKOJ原创题,2025

题目描述

春节是中国最重要的传统节日之一,烟花是庆祝春节不可或缺的元素。现在,你需要编写一个C++程序来模拟春节烟花的燃放过程。烟花燃放时,会在空中形成各种形状和颜色的图案。你的任务是模拟一个烟花燃放的过程,并在控制台上输出烟花燃放的动画效果。

输入格式

  1. 烟花的类型(1表示圆形,2表示星形,3表示心形)。
  2. 烟花的颜色(用一个字符串表示,例如 "Red", "Blue", "Green")。
  3. 烟花燃放时的持续时间(整数,表示燃放的帧数)。
  4. 烟花燃放的高度(整数,表示烟花燃放的最高点)。
  5. 烟花燃放的起始位置(x, y坐标,整数)。

输入以一个整数 $n$ 开始,表示烟花的数量,随后是n组烟花的描述。每组烟花的描述由上述五个部分组成,每部分占一行。

输出格式

对于每个烟花,你需要在控制台上输出其燃放过程。每个烟花的燃放过程由多个帧组成,每一帧对应一个2D平面上的点阵图。每一帧的输出应该根据烟花的高度和类型来确定图案。

  • 圆形烟花:在起始位置为中心,形成一个圆形图案。
  • 星形烟花:在起始位置为中心,形成一个星形图案。
  • 心形烟花:在起始位置为中心,形成一个心形图案。

每一帧烟花燃放后,烟花的高度会逐渐降低,直到燃放结束。烟花燃放结束后,输出一个空行以分隔下一个烟花的燃放过程。

输入样例    复制

3
1
Red
5
10
3 4
2
Blue
4
8
1 2
3
Green
3
15
0 0

输出样例    复制

*********
.*.*.*.*.
.*.*.*.*.
.*.*.*.*.
.*.*.*.*.
*********
.
.
.
*********
.*.*.*.*.
.*.*.*.*.
.*.*.*.*.
.*.*.*.*.
*********
.
.
.
.********.*
.*.*.*.*.*.*
.*.*.*.*.*.*
.*.*.*.*.*.*
.*.*.*.*.*.*
.********.*

提示