小朋友学OJ-1129 空心六边形

作者: 海天一树X | 来源:发表于2018-05-18 11:12 被阅读22次

题目:
http://oj.jzxx.net/problem.php?id=1129

程序:

#include <iostream>
using namespace std;


/*
 * 因为图形上下对称,所以构造一个关于对称的预处理映射函数
 * 比如,n = 5时:
 * 第1行和第9行对称,第2行和第8行对称,第3行和第7行对称,第4行和第6行对称
 */
int premap(int x, int n)
{
    return x >= n ? 2 * n - x : x;
}


int main()
{
    int n;
    cin >> n;
    int width = n + 2 * (n - 1);
    for(int i = 1; i <= 2 * n - 1; i++)
    {
        int mIndex = premap(i, n);
        if(1 == mIndex)     // 第一行或最后一行
        {
            for(int j = 1; j <= n - 1; j++)
            {
                cout << ' ';
            }

            for(int k = 1; k <= n; k++)
            {
                cout << '*';
            }

            cout << endl;
        }
        else
        {
            int j;
            for(j = 1; j <= n - mIndex; j++)
            {
                cout << ' ';    // 左边的空白
            }
            cout << "*";        // 左边的星号

            for(int k = 1; k <= width - 2 * j; k++)
            {
                cout << ' ';    // 中间的空白
            }
            cout << "*";        // 右边的星号

            cout << endl;
        }
    }

    return 0;
}

TopCoder & Codeforces & AtCoder交流QQ群:648202993
更多内容请关注微信公众号


wechat_public_header.jpg

相关文章

  • 小朋友学OJ-1129 空心六边形

    题目:http://oj.jzxx.net/problem.php?id=1129 程序: TopCoder & ...

  • UG编程3D建模之六角宫灯

    1.草绘六边形,扫描出宫灯的整体形状,加厚做成空心 2.将四周菱角边加厚加宽生成边框,形成落差 3.做出宫灯龙形飞...

  • 北大徐凯文:学生空心病与时代焦虑

    《时代空心病与焦虑经济学》演讲 不是学生空心了,是整个社会空心了 首先我想从今年发生的事情开始。今年7月,我和太太...

  • 2017.12.5

    2017-12-05 ω 上数学课的时候 讲到六边形 雷哥说我们教室就是六边形 突然就注意到了 在六边形的教室里呆...

  • 2020-02-04

    蜜蜂的窝 蜜蜂的窝为什么是六边形的? 如果我们仔细一看 会发现 大的六边形里面 有许多小孔 小孔也是六边形的 这是...

  • 六边形

    六边形值计算方式

  • 小朋友学舞蹈

    2018年9月29日 深圳晴 今天老师给我发来了一段小朋友学舞蹈的视频,看着小朋友认真学习的样子真的是很开心。听...

  • 小朋友学吉他

    这个学期(四年级上学期),小朋友主动要求要学一个乐器,众多乐器里面他选择了电子吉他,刚刚上课的时候,他很积...

  • 小朋友学编程

    由于优惠价格吸引(有时总是摆脱不了这个心理,哈哈),给小朋友又报了三天的编程课,虽然也是入门级别,愿意相信会有所不...

  • 小朋友学炒菜

    炒豆腐

网友评论

    本文标题:小朋友学OJ-1129 空心六边形

    本文链接:https://www.haomeiwen.com/subject/jizwdftx.html