https://www.luogu.org/problemnew/show/P1498

题目描述

自从到了南蛮之地,孔明不仅把孟获收拾的服服帖帖,而且还发现了不少少数民族的智慧,他发现少数民族的图腾往往有着一种分形的效果,在得到了酋长的传授后,孔明掌握了不少绘图技术,但唯独不会画他们的图腾,于是他找上了你的爷爷的爷爷的爷爷的爷爷……帮忙,作为一个好孙子的孙子的孙子的孙子……你能做到吗?

输入输出格式

输入格式:

每个数据一个数字,表示图腾的大小(此大小非彼大小) n<=10

输出格式:

这个大小的图腾

输入输出样例

输入样例#1:

2
输出样例#1:

   /\
/__\
/\ /\
/__\/__\
输入样例#2:

3
输出样例#2:

       /\
/__\
/\ /\
/__\/__\
/\ /\
/__\ /__\
/\ /\ /\ /\
/__\/__\/__\/__\
 #include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
/*
/\
/__\
/\ /\
/__\/__\
*/
int n;
char ch[][];
int mypow(int x,int y)
{
int ans=;
while(y)
{
if(y&)ans*=x;
x*=x;
y/=;
}
return ans;
}
void dfs(int q,int w,int e,int t)//q控制图形递归的边界 w e 控制横纵坐标 t控制深度【用于控制w e的大小,递归分形的精髓,一定要由n分解成n-1,然后观察w e的大小变化】
{
// cout << w << " "<<e << endl;
if(q==)
{
ch[w][e]='/';
ch[w][e+]='\\';
ch[w+][e-]='/';
ch[w+][e+]='\\';
ch[w+][e]='_';
ch[w+][e+]='_';
return;
}
dfs(q/,w,e,t*);
dfs(q/,w+t,e-t,t*);
dfs(q/,w+t,e+t,t*);
}
int main()
{
scanf("%d",&n);
for(int i = ; i < ; i++)
{
int j;
for( j = ; j < ; j++)
{
ch[i][j]=' ';
}
}
dfs(mypow(,n-),,mypow(,n)-,);
for(int i = ; i < mypow(,n) ; i++)
{
for(int j = ; j >= ; j--)
{
if(ch[i][j]=='\\')
{
ch[i][j+]='\0';
break;
}
}
}
for(int i = ; i < mypow(,n) ; i++)
{
printf("%s\n",ch[i]);
}
return ;
}

最新文章

  1. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
  2. MVVM架构~knockoutjs系列之验证信息自定义输出~续
  3. Flex Flash Player回声消除的最佳方法
  4. Wordpress添加关键词和描述
  5. (转)Python 字典排序
  6. [HIve - LanguageManual] Transform [没懂]
  7. 【二分图】P3386洛谷模板
  8. hive小文件合并设置参数
  9. UML与软件建模:第二次作业(类图中类的表示)
  10. pod 更新慢解决方案
  11. perl选项、特殊变量、一些函数参考手册
  12. [转] iOS开发工具——网络封包分析工具Charles
  13. C语言--第一周作业评分和总结(5班)
  14. C#用log4net记录日志
  15. Kafka设计解析(二十一)关于Kafka幂等producer的讨论
  16. Redis的基本操作语句
  17. kvm虚拟机
  18. 算法笔记_034:大整数乘法(Java)
  19. SpringMVC——处理 JSON:使用 HttpMessageConverter
  20. 【ajax】ajax异步实现用户注册验证

热门文章

  1. Java-Java面向对象程序设计
  2. android--------面试题收集
  3. Nginx配置https, 80端口重定向443
  4. Working routine CodeForces - 706E (链表)
  5. FNDLOAD移植Lookup Type
  6. 无法打开物理文件“xxxx.mdf”。操作系统错误 5:“5(拒绝访问)”
  7. iOS UI-AlertView(警示框)和ActionSheet(选择框、操作表单)
  8. React脚手架create-react-app+elementUI使用
  9. tensoflow学习入门一
  10. git 系统找不到 指定的路径