poj2083

来源:互联网 发布:知乎 周杰伦与王力宏 编辑:程序博客网 时间:2024/04/30 05:03
/* * poj2083.cpp * * Created on: 2010-8-10 * Author: friendy *///好神奇的递归阿……号精减#include#include#include#include#includeusing namespace std;char map[1000][1000];void graph(int x, int y, int n) {int l;if (n == 1)map[x][y] = 'X';else {l = (int) pow(3.0, (double) (n - 2));graph(x, y, n - 1);graph(x, y + 2 * l, n - 1);graph(x + 2 * l, y, n - 1);graph(x + l, y + l, n - 1);graph(x + 2 * l, y + 2 * l, n - 1);}}int main(){int i,j,n,r,max;while(1){scanf("%d",&n);if(n==-1)break;r = (int) pow(3.0, (double) (n - 1));graph(0, 0, n);for (i = 0; i < r; i++) {max = 0;for (j = 0; j < r; j++)if (map[i][j] == 'X')max = j;for (j = 0; j < max; j++)if (map[i][j] != 'X')map[i][j] = ' ';map[i][max + 1] = '/0';}for (i = 0; i < r; i++)printf("%s/n", map[i]);printf("-/n");}}
原创粉丝点击