poj - 3786 Repeater
一道递归构造图形的题,做的时候一直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相关推荐
- POJ 2083 递归画分形图
http://poj.org/problem?id=2083 Fractal 方法一: /* 度数为n的盒形分形,其大小是3^(n-1)*3^(n-1).可以用字符数组来存储盒形分形中各个字符, ...
- poj 1129 四色原理DFS
如题:http://poj.org/problem?id=1129 用中继器(repeater)给每个接受者(receiver)发送信号,为了防止信号干扰,两个相邻的广播站之间的中继器要不相同 ...
- POJ 3268 D-Silver Cow Party
http://poj.org/problem?id=3268 Description One cow from each of N farms (1 ≤ N ≤ 1000) conveniently ...
- poj 2559 Largest Rectangle in a Histogram 栈
// poj 2559 Largest Rectangle in a Histogram 栈 // // n个矩形排在一块,不同的高度,让你求最大的矩形的面积(矩形紧挨在一起) // // 这道题用的 ...
- POJ 2528 Mayor's posters(线段树)
题目大意 贴海报.每张海报的高度都是一样的,唯独宽度不一样.每张海报只能占用整数倍的单位线段长度,贴了 n(n<=10000) 张海报之后,有几张能够看见(有一个角能看见这张海报也算被看见了)? ...
- POJ 2226 Muddy Fields 最小点覆盖+加建图(好题)
题目链接 题目一看就是最小点覆盖,这道题与POJ - 3041 算是一类题,但是3041算是一道十分裸的,因为删除的是整行或者整列,所以图其实是现成的,但是本题的难点就在如何建图. 思路:首先还是尽量 ...
- poj 2681 字符串
http://poj.org/problem?id=2681 给你任意长度的字符串,找出两串字符中不相同的字符个数(总数) #include<string> #include<cst ...
- (区间dp 或 记忆化搜素 )Brackets -- POJ -- 2955
http://poj.org/problem?id=2955 Description We give the following inductive definition of a "reg ...
- Repeater分页代码
//ASP.NET中的DataList和Repeater提供了简单快速的方法來显示,其间,我们可以使用<ItemTemplate>更是使我们能随心所欲的控制数据的排放样式! //.可惜的是 ...
最新文章
- Ajax实现在textbox中输入内容,动态从数据库中模糊查询显示到下拉框中
- html多重边框,中间空白,CSS实现多重边框
- 用python玩转数据测试与作业_用Python玩转数据分析10
- html表单基础知识,【学习笔记】html基础知识第四更/与用户交互!(表单标签)...
- IntelliJ Idea学习笔记003---IDEA中打开Run DashBoard的方法
- 根据我4年Facebook营销经验,和大家聊聊做不好Facebook广告的原因!
- studying and learning
- HttpComponents组件探究 - HttpClient篇
- RHEL6本地YUM源配置
- java scjp考试_Java开发网 - 【经验】今天以96通过SCJP考试(含考试经验和部分真题)[转帖]...
- Linux删除账号及主目录,linux 删除用户账号和主目录
- 雅马哈音箱的usb驱动MAC-WINDOWS
- 商圈研究方案-调研内容及方法
- 潇潇雨祭--(我很好的朋友的一篇讲述爱情的文章!)
- 针对百度的常规网页优化策略
- HDU - Polygons(半平面交)
- 投机之殇——解说史上最大CPU漏洞
- Python 机器学习 唐宇迪泰坦尼克号【最新代码】
- Django 创建项目app
- 【性能测试之问题分析】遇到内存告警百分之80以上的排查逻辑及实例分析(关键字:JVM、JAVA)