蓝桥杯历届-打印大X

Posted Kid_TH

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝桥杯历届-打印大X相关的知识,希望对你有一定的参考价值。

蓝桥杯历届-打印大X


打印大X

小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。
为了便于比对空格,所有的空白位置都以句点符来代替。

要求输入两个整数m n,表示笔的宽度,X的高度。用空格分开
要求输出一个大X



#include<cstdio>
#include<iostream>
using namespace std;
int go(int i, int j, int m, int n)
    int m1 = n-m-1;
    int len = m*2+m1;
    //上下对称
    if (i > (n/2)+1) 
        i -= (i - ((n/2)+1))*2;
     
    // 左右对称
    if (j > (len/2)+1) 
        if (len%2 == 1)
            j -= (j - ((len/2)+1))*2;
        else 
            j -= (j - ((len/2)+1))*2+1;
     
    // 输出* 
    if (j >= i && j-i < m) return 1;
    return 0;

int main() 
    int m, n;
    scanf("%d%d", &m, &n);
    int m1 = n-m-1;
    int len = m*2+m1;
    for (int i = 1; i <= n; i++) 

        for (int j = 1; j <= len; j++) 
            if (go(i, j, m, n)) 
                printf("*");
             else 
                printf(".");
            
        
        puts("");
    
    return 0;

以上是关于蓝桥杯历届-打印大X的主要内容,如果未能解决你的问题,请参考以下文章

蓝桥杯 历届试题 PREV-2 打印十字图

蓝桥杯历届试题 打印十字图

[蓝桥杯][历届试题]打印十字图

蓝桥杯 历届试题 打印十字图

蓝桥杯 历届试题 斐波那契

蓝桥杯练习系统历届试题 横向打印二叉树