一道递归构造图形的题,做的时候一直TLE,多想想优化才过的。

 1 #include <stdio.h>
 2 #include <string.h>
 3 char map[2500][2500];
 4 char tplt[6][6];
 5 int n;
 6 void build(int m, int x, int y)
 7 {
 8     int i,j,sum = 1;
 9     for(i = 1; i < m; i++) sum *= n;
10     if(m == 1)
11         for(i = x; i < x+n; i++)
12             for(j = y; j < y+n; j++)
13                 map[i][j] = tplt[i-x][j-y];
14     else for(i = 0; i < n; i++)
15         for(j = 0; j < n; j++)
16             if(tplt[i][j] != ' ')
17                 build(m-1,x+i*sum,y+j*sum);
18 }
19 int main()
20 {
21     int m,i,j,sum;
22     while(scanf("%d",&n),n)
23     {
24         getchar();
25         memset(map,' ',sizeof map);
26         for(i = 0; i < n; i++)
27             gets(tplt[i]);
28         scanf("%d",&m);
29         build(m,0,0);
30         sum = 1;
31         for(i = 0; i < m; i++) sum *= n;
32         for(i = 0; i < sum; i++)
33         {
34             map[i][sum] = '\0';
35             for(j = sum-1; j >= 0; j--)
36                 if(map[i][j] != ' ')
37                 {
38                     map[i][j+1] = '\0';
39                     break;
40                 }
41             printf("%s\n",map[i]);
42         }
43     }
44     return 0;
45 }

转载于:https://www.cnblogs.com/lzxskjo/archive/2012/08/29/2661083.html

poj - 3786 Repeater相关推荐

  1. POJ 2083 递归画分形图

    http://poj.org/problem?id=2083    Fractal 方法一: /* 度数为n的盒形分形,其大小是3^(n-1)*3^(n-1).可以用字符数组来存储盒形分形中各个字符, ...

  2. poj 1129 四色原理DFS

    如题:http://poj.org/problem?id=1129     用中继器(repeater)给每个接受者(receiver)发送信号,为了防止信号干扰,两个相邻的广播站之间的中继器要不相同 ...

  3. POJ 3268 D-Silver Cow Party

    http://poj.org/problem?id=3268 Description One cow from each of N farms (1 ≤ N ≤ 1000) conveniently ...

  4. poj 2559 Largest Rectangle in a Histogram 栈

    // poj 2559 Largest Rectangle in a Histogram 栈 // // n个矩形排在一块,不同的高度,让你求最大的矩形的面积(矩形紧挨在一起) // // 这道题用的 ...

  5. POJ 2528 Mayor's posters(线段树)

    题目大意 贴海报.每张海报的高度都是一样的,唯独宽度不一样.每张海报只能占用整数倍的单位线段长度,贴了 n(n<=10000) 张海报之后,有几张能够看见(有一个角能看见这张海报也算被看见了)? ...

  6. POJ 2226 Muddy Fields 最小点覆盖+加建图(好题)

    题目链接 题目一看就是最小点覆盖,这道题与POJ - 3041 算是一类题,但是3041算是一道十分裸的,因为删除的是整行或者整列,所以图其实是现成的,但是本题的难点就在如何建图. 思路:首先还是尽量 ...

  7. poj 2681 字符串

    http://poj.org/problem?id=2681 给你任意长度的字符串,找出两串字符中不相同的字符个数(总数) #include<string> #include<cst ...

  8. (区间dp 或 记忆化搜素 )Brackets -- POJ -- 2955

    http://poj.org/problem?id=2955 Description We give the following inductive definition of a "reg ...

  9. Repeater分页代码

    //ASP.NET中的DataList和Repeater提供了简单快速的方法來显示,其间,我们可以使用<ItemTemplate>更是使我们能随心所欲的控制数据的排放样式! //.可惜的是 ...

最新文章

  1. Ajax实现在textbox中输入内容,动态从数据库中模糊查询显示到下拉框中
  2. html多重边框,中间空白,CSS实现多重边框
  3. 用python玩转数据测试与作业_用Python玩转数据分析10
  4. html表单基础知识,【学习笔记】html基础知识第四更/与用户交互!(表单标签)...
  5. IntelliJ Idea学习笔记003---IDEA中打开Run DashBoard的方法
  6. 根据我4年Facebook营销经验,和大家聊聊做不好Facebook广告的原因!
  7. studying and learning
  8. HttpComponents组件探究 - HttpClient篇
  9. RHEL6本地YUM源配置
  10. java scjp考试_Java开发网 - 【经验】今天以96通过SCJP考试(含考试经验和部分真题)[转帖]...
  11. Linux删除账号及主目录,linux 删除用户账号和主目录
  12. 雅马哈音箱的usb驱动MAC-WINDOWS
  13. 商圈研究方案-调研内容及方法
  14. 潇潇雨祭--(我很好的朋友的一篇讲述爱情的文章!)
  15. 针对百度的常规网页优化策略
  16. HDU - Polygons(半平面交)
  17. 投机之殇——解说史上最大CPU漏洞
  18. Python 机器学习 唐宇迪泰坦尼克号【最新代码】
  19. Django 创建项目app
  20. 【性能测试之问题分析】遇到内存告警百分之80以上的排查逻辑及实例分析(关键字:JVM、JAVA)

热门文章

  1. 就业丨速成班出来的AI人才,老板到底要不要?
  2. Xmanager7如何通过SSH连接远程服务器
  3. 没有安装python如何使用anaconda运行python命令行
  4. 【综述专栏】自动驾驶中可解释AI的综述和未来研究方向
  5. 资金只够支撑10个月,自动驾驶致命事故重演:特斯拉陷入困境
  6. 脑内世界模型:脑科学基础上的意识问题哲学解说
  7. Google联手Facebook 要在AI研究上搞什么大事?
  8. “编码 5 分钟,命名 2 小时”,这道题究竟怎么解? | 问题征集
  9. ubuntu 设置root用户密码并实现root用户登录
  10. java--设计模式总结