Fractal
来源:互联网 发布:可以在特定区域对网络 编辑:程序博客网 时间:2024/05/16 09:16
Description
A fractal is an object or quantity that displays self-similarity, in a somewhat technical sense, on all scales. The object need not exhibit exactly the same structure at all scales, but the same "type" of structures must appear on all scales.
A box fractal is defined as below :
Your task is to draw a box fractal of degree n.
A box fractal is defined as below :
- A box fractal of degree 1 is simply
X - A box fractal of degree 2 is
X X
X
X X - If using B(n - 1) to represent the box fractal of degree n - 1, then a box fractal of degree n is defined recursively as following
B(n - 1) B(n - 1) B(n - 1)B(n - 1) B(n - 1)
Your task is to draw a box fractal of degree n.
Input
The input consists of several test cases. Each line of the input contains a positive integer n which is no greater than 7. The last line of input is a negative integer −1 indicating the end of input.
Output
For each test case, output the box fractal using the 'X' notation. Please notice that 'X' is an uppercase letter. Print a line with only a single dash after each test case.
Sample Input
1
2
3
-1
Sample Output
X
-
X X
X
X X
-
X X X X
X X
X X X X
X X
X
X X
X X X X
X X
X X X X
-
思路:采用分治思想,将同一类型的问题分解成规模更小的问题,用深搜解决
代码如下:
#include <cstdio>#define Max 729 + 5char matrix[Max][Max];void DFS(int n,int x,int y){if (n == 1){matrix[x][y] = 'X';return;}else{int size = 1;for (int i = 2; i < n; i++)size *= 3;DFS(n - 1,x,y);//左上角DFS(n - 1,x,y + 2 * size);//右上角DFS(n - 1,x + size,y + size);//中间DFS(n - 1,x + 2 * size,y);//左下角DFS(n - 1,x + 2 * size,y + 2 * size);//右下角}}int main(){int n;while (scanf("%d",&n) == 1 && (n + 1)){int size = 1;for (int i = 1; i < n; i++)size *= 3;for (int j = 0; j < size; j++)//初始化{for (int k = 0; k < size; k++)matrix[j][k] = ' ';matrix[j][size] = '\0';}DFS(n,0,0);for (int k = 0; k < size; k++)printf("%s\n",matrix[k]);printf("-\n");}return 0;}
- Fractal
- Fractal
- Fractal
- Mandelbox Fractal
- poj2083 Fractal
- 【HIHOCODER】Fractal
- Fractal Interpolation
- JNOJ Fractal
- Fractal 分形学
- 分形(fractal)
- Fractal Software Composition Framework
- 分形蕨( fractal fern)
- 分形(Fractal)
- pku 2083 Fractal
- Poj 2083 Fractal
- ZOJ 3507 Fractal
- [ZOJ 2423] Fractal
- 分形fractal
- 舵机的脉冲与转动角度问题
- java filter servlet listener
- navigation
- UVA 120 Stacks of Flap jacks
- UVA 133 The Dole Queue
- Fractal
- 瑞典奶酪
- 黑马程序员_银行业务调度系统
- osm 数据格式(openstreet map)与Route --by wangsh
- 5 Programming Mistakes You Should Stop Making
- JAVA好书推荐
- UVA 699 The Falling Leaves
- 使用GetText本地化编程
- 最近邻算法的实现:k-d tree