Hrbust 囧(输出图像囧)

2023-12-11 11:30
文章标签 输出 图像 hrbust

本文主要是介绍Hrbust 囧(输出图像囧),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Description

DS最近很囧,总是不能把妹子哄开心。所以,邪恶的他也想让你们囧一囧。


他给你一个数字 n让你输出囧字的迭代(详见样例)。

Input

第一行一个整数,代表数据的组数。

每组数据一个整数 n1≤n≤7

Output

每组数据输出一个囧字的图形.

Sample Input
2
1
2
Sample Output
+------+
|      |
| /  \ |
|      |
| +--+ |
| |  | |
| |  | |
+-+--+-+
+--------------+
|              |
|     /  \     |
|    /    \    |
|   /      \   |
|  /        \  |
| /          \ |
|              |
|   +------+   |
|   |      |   |
|   | /  \ |   |
|   |      |   |
|   | +--+ |   |
|   | |  | |   |
|   | |  | |   |
+---+-+--+-+---+
Hint

再友情给个n = 3的样例,请注意囧字的迭代方式。

+------------------------------+
|                              |
|             /  \             |
|            /    \            |
|           /      \           |
|          /        \          |
|         /          \         |
|        /            \        |
|       /              \       |
|      /                \      |
|     /                  \     |
|    /                    \    |
|   /                      \   |
|  /                        \  |
| /                          \ |
|                              |
|       +--------------+       |
|       |              |       |
|       |     /  \     |       |
|       |    /    \    |       |
|       |   /      \   |       |
|       |  /        \  |       |
|       | /          \ |       |
|       |              |       |
|       |   +------+   |       |
|       |   |      |   |       |
|       |   | /  \ |   |       |
|       |   |      |   |       |
|       |   | +--+ |   |       |
|       |   | |  | |   |       |
|       |   | |  | |   |       |
+-------+---+-+--+-+---+-------+

#include<stdio.h>
#define N (1<<8)*8
char c[8][N][N];
void init()
{int h=8;for(int k=1;k<8;k++){for(int i=1;i<=h;i++)for(int j=1;j<=h;j++)c[k][i][j]=' ';h*=2;}//----第一个囧-----for(int j=1;j<=4;j++)if(j==1) c[1][1][j]=c[1][1][8-j+1]='+';else c[1][1][j]=c[1][1][8-j+1]='-';for(int i=2;i<8;i++)c[1][i][1]=c[1][i][8]='|';c[1][3][3]='/';c[1][3][6]='\\';c[1][5][3]=c[1][5][6]='+';c[1][5][4]=c[1][5][5]='-';for(int i=6;i<8;i++)c[1][i][3]=c[1][i][6]='|';for(int j=1;j<=4;j++)if(j%2) c[1][8][j]=c[1][8][8-j+1]='+';else c[1][8][j]=c[1][8][8-j+1]='-';
}
void set()
{int h=8;for(int k=2;k<=7;k++)//第k个囧{h*=2;for(int j=1;j<=h/2;j++)//第一行if(j==1) c[k][1][j]=c[k][1][h-j+1]='+';else c[k][1][j]=c[k][1][h-j+1]='-';for(int i=2;i<h;i++)//第一列和最后一列(除第一行和最后一行)c[k][i][1]=c[k][i][h]='|';for(int t=1;h/2-t>2;t++)//那个八字{c[k][2+t][h/2-t]='/';c[k][2+t][h/2+1+t]='\\';}for(int i=h/2+1;i<=h;i++)//大囧中的多个小囧就是前一个囧的图形for(int j=(1<<k)+1;j<=h-(1<<k);j++)c[k][i][j]=c[k-1][i-h/2][j-(1<<k)];for(int j=1;j<=(1<<k);j++)//最后一行的最两边,中间的是前一个囧的最后一行if(j==1)c[k][h][j]=c[k][h][h-j+1]='+';else c[k][h][j]=c[k][h][h-j+1]='-';}
}
int main()
{init();set();int h,n;while(scanf("%d",&n)>0){h=1<<(n+2);for(int i=1;i<=h;i++){for(int j=1;j<=h;j++)printf("%c",c[n][i][j]);printf("\n");}}}


这篇关于Hrbust 囧(输出图像囧)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/480517

相关文章

使用TomCat,service输出台出现乱码的解决

《使用TomCat,service输出台出现乱码的解决》本文介绍了解决Tomcat服务输出台中文乱码问题的两种方法,第一种方法是修改`logging.properties`文件中的`prefix`和`... 目录使用TomCat,service输出台出现乱码问题1解决方案问题2解决方案总结使用TomCat,

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

C++中实现调试日志输出

《C++中实现调试日志输出》在C++编程中,调试日志对于定位问题和优化代码至关重要,本文将介绍几种常用的调试日志输出方法,并教你如何在日志中添加时间戳,希望对大家有所帮助... 目录1. 使用 #ifdef _DEBUG 宏2. 加入时间戳:精确到毫秒3.Windows 和 MFC 中的调试日志方法MFC

Python使用Colorama库美化终端输出的操作示例

《Python使用Colorama库美化终端输出的操作示例》在开发命令行工具或调试程序时,我们可能会希望通过颜色来区分重要信息,比如警告、错误、提示等,而Colorama是一个简单易用的Python库... 目录python Colorama 库详解:终端输出美化的神器1. Colorama 是什么?2.

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

顺序表之创建,判满,插入,输出

文章目录 🍊自我介绍🍊创建一个空的顺序表,为结构体在堆区分配空间🍊插入数据🍊输出数据🍊判断顺序表是否满了,满了返回值1,否则返回0🍊main函数 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~ 🍊自我介绍   Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

Verybot之OpenCV应用一:安装与图像采集测试

在Verybot上安装OpenCV是很简单的,只需要执行:         sudo apt-get update         sudo apt-get install libopencv-dev         sudo apt-get install python-opencv         下面就对安装好的OpenCV进行一下测试,编写一个通过USB摄像头采

如何将一个文件里不包含某个字符的行输出到另一个文件?

第一种: grep -v 'string' filename > newfilenamegrep -v 'string' filename >> newfilename 第二种: sed -n '/string/!'p filename > newfilenamesed -n '/string/!'p filename >> newfilename

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录 在深度学习项目中,目标检测是一项重要的任务。本文将详细介绍如何使用Detectron2进行目标检测模型的复现训练,涵盖训练数据准备、训练命令、训练日志分析、训练指标以及训练输出目录的各个文件及其作用。特别地,我们将演示在训练过程中出现中断后,如何使用 resume 功能继续训练,并将我们复现的模型与Model Zoo中的