• 递归画三角形


    关于十二月份月赛的通知 本学期最后两次月赛将于12月17日,1月7日举行 1. 本次月赛时间为12月17月9:00-12:00 2. 地点:另行通知 3. 本次比赛可以携带纸质书籍查阅资料 4. 10%一等奖,20%二等奖,30%三等奖 5. 获得一等奖的同学直接进入ACM集训队 欢迎大家报名参加比赛!! 报名链接:https://wj.qq.com/s/1745264/6f12

    3306: 美男有毒

    时间限制: 1 Sec  内存限制: 256 MB
    提交: 17  解决: 6
    [提交][状态][讨论版]

    题目描述

        众所周知,gyt喜欢玩“美男有毒”这款游戏,在这款游戏里,gyt一夜之间无辜“被穿越”,没有倾城之貌也就算了,竟然还自带称号“帝都第一丑女”!王妃梦碎,老爹嫌弃,继母暗害,到底能信任何人,日子真要过得如此凄惨吗?
        就在这困难之际,天神伸出援手,告诉gyt,只要gyt答对了一个问题就可以穿越回现代,然而gyt太菜了,不知道这个问题的答案是什么,快来帮他回答吧。
        谢尔宾斯基三角形是这样一类图形,当你输入n可以得到以下图形:
    n=0:
     *
    * *
    n=1:
       *
      * *
     *   *
    * * * *
    n=2:
           *
          * *
         *   *
        * * * *
       *       *
      * *     * *
     *   *   *   *
    * * * * * * * *
    可以发现,n号谢尔宾斯基三角形是由三个n-1号谢尔宾斯基三角形拼接得来的,现在天神给你一个n,要求你输出相应的谢尔宾斯基三角形。

    输入

    第一行一个正整数t,表示样例个数。
    接下来t行,每行一个非负数n(n<10)


    输出

    对于每一个n,输出相应的谢尔宾斯基三角形(注意每一行的最后一个*后面均无空格)

    样例输入

    3
    0
    1
    2

    样例输出

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

    提示

     

    来源

     
    [提交][状态]
     
    #include<bits/stdc++.h>
    using namespace std;
    char p[2500][2500];
    
    void Draw(int n,int x,int y){
        if(n==0){
            p[x][y+1]='*';
            p[x+1][y]='*';
            p[x+1][y+2]='*';
            return;
        }
        Draw(n-1,x,y+(1<<n));//不断调用这个y一直向后移就得到开头的了
        Draw(n-1,x+(1<<n),y);//然后下移了一个三角形,先第一个,然后第三个啊啊啊啊!什么鬼
        Draw(n-1,x+(1<<n),y+(1<<(n+1)));
    }
    
    int main(){
        int t;
        cin>>t;
        while(t--){
            int n;
            cin>>n;
            memset(p,' ',sizeof(p));
            Draw(n,0,0);
            for(int i=0;i<(1<<(n+1));i++)
                for(int j=2500-1;p[i][j]==' ';p[i][j]='',j--);
            for(int i=0;i<(1<<(n+1));i++)
                printf("%s
    ",p[i]);
        }
    
        return 0;
    }
  • 相关阅读:
    第十一周课程总结
    第十周学习总结
    第九周课程总结&实验报告(七)
    第八周课程总结&实验报告(六)
    第七周总结&第五次实验报告
    第六周学习总结&第四次实验报告
    课程总结
    第十四周课程总结&实验报告(简单记事本的实现)
    第十三周课程总结
    第十二周
  • 原文地址:https://www.cnblogs.com/cunyusup/p/8012860.html
Copyright © 2020-2023  润新知