编程介的小学生
2017-10-30 03:14Graph Generation
10Problem Description
You are design a graphics generator to create a graph called "GStar".
GStar is defined by recursive, the first level "GStar", the GStar(1), is a square like the graph below:
+-+
|.|
+-+
Then we divide every edge of the GStar(1) into three part, and draw a new square outward on the middle part. Thus we get the GStar(2), like the graph below:
....+-+....
....|.|....
..+-+.+-+..
..|.....|..
+-+.....+-+
|.........|
+-+.....+-+
..|.....|..
..+-+.+-+..
....|.|....
....+-+....
We can get GStar(n) from GStar(n-1) by split the outer bound of every edge on GStar(n-1) into three part and draw a square outward taking place the middle part.
The following graph is the GStar(3), pay attention that outer bound touches itself but the inner part are also "outer bound", so the edges are used in generation on the next level of GStar.
................+-+................
................|.|................
..............+-+.+-+..............
..............|.....|..............
............+-+.....+-+............
............|.........|............
..........+-+-+.....+-+-+..........
..........|.|.|.....|.|.|..........
........+-+.+-+.....+-+.+-+........
........|.................|........
......+-+.................+-+......
......|.....................|......
....+-+-+.................+-+-+....
....|.|.|.................|.|.|....
..+-+.+-+.................+-+.+-+..
..|.............................|..
+-+.............................+-+
|.................................|
+-+.............................+-+
..|.............................|..
..+-+.+-+.................+-+.+-+..
....|.|.|.................|.|.|....
....+-+-+.................+-+-+....
......|.....................|......
......+-+.................+-+......
........|.................|........
........+-+.+-+.....+-+.+-+........
..........|.|.|.....|.|.|..........
..........+-+-+.....+-+-+..........
............|.........|............
............+-+.....+-+............
..............|.....|..............
..............+-+.+-+..............
................|.|................
................+-+................
Input
The input contains several test cases, the first line of test case contains an integer denoting the number of test cases.
For each test cases, there are only three integers K, X, Y. Where K denoting the level of GStar. And you are to output a part of the graph from (X,Y) to (X+9,Y+9), a 10*10 matrix. Where the top-left corner is define as (0,0) and the Y-th character of X-th line is define as (X-1,Y-1). Notice that the empty cell are filled with ".". (1 <= K <= 10, 0 <= X, Y <= 30000)
Output
For each test cases, output the character matrix. See example for further details.
Sample Input
3
1 1 1
2 1 1
5 88 72
Sample Output
Case 1:
.|........
-+........
..........
..........
..........
..........
..........
..........
..........
..........
Case 2:
...|.|....
.+-+.+-+..
.|.....|..
-+.....+-+
.........|
-+.....+-+
.|.....|..
.+-+.+-+..
...|.|....
...+-+....
Case 3:
+-+.......
|.........
+-+.......
|.|.......
+-+-+.+-+.
..|.|.|.|.
..+-+-+-+.
....|.|...
..+-+-+-+.
..|.|.|.|.
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- 如何使用新的microsoft graph api创建身份验证令牌?
- office365
- azure
- php
- 3个回答
- 选择包含的两列> 1行具有相同的值
- sql
- row
- php
- 1个回答
- HTML2FPDF打印页面结果为pdf
- pdf-generation
- php
- 3个回答
- 无法在Symfony2 / Doctrine2中保留复杂的实体图
- symfony
- php
- 1个回答
- 一个有关图的生成的问题, 实在不会做啊
- each
- character
- square
- 1个回答