蓝桥杯 11. 打印大X

打印大X

原题目链接

题目描述

小明希望用星号拼凑,打印出一个大 X,他要求能够控制笔画的宽度和整个字的高度。

为了便于比对空格,所有的空白位置都以句点符 . 来代替。


输入描述

输入两个整数 mn,表示笔画的宽度和 X 的高度,用空格分开。

其中:

  • 0 < m < n
  • 3 < n < 1000
  • 保证 n 是奇数。

输出描述

输出一个大 X,使用星号 * 绘制,空白处用句点 . 填充。


输入输出样例

输入

3 9

输出

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

c++代码

#include

using namespace std;

int main() {
    int m, n;
    cin >> m >> n;
    int w = n - 1 + m, l = 0, r = w - 1;
    while(l <= n - 1) {
        string s(w, '.');
        for (int i = l, cont = 0; cont < m; cont++, i++) s[i] = '*';
        for (int i = r, cont = 0; cont < m; cont++, i--) s[i] = '*';
        cout << s << endl;
        l++, r--;
    }
    return 0;
}//by wqs

你可能感兴趣的:(蓝桥杯题库,蓝桥杯,算法,职场和发展,深度优先,数据结构)