F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

Mine Sweeper

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 810    Accepted Submission(s): 347
Special Judge


Problem Description
A mine-sweeper map can be expressed as an $r\times c$ grid, and each cell of the grid is either mine cell or non-mine cell. A mine cell has no number on it, while a non-mine cell has a number, the number of mine cells that share at least one common point with the cell, on it. Following is a $16\times 30$ mine-sweeper map, where flag cells denotes mine cells while blank cells denotes non-mine cells with number 0 on them.



Given an integer $S$, construct a mine-sweeper map of $r, c$ both not exceeding 25, whose sum of numbers on non-mine cells exactly equals $S$. If multiple solutions exist, print any one of them. If no solution, print "-1" in one line.
 

Input
The first line contains one positive integer $T$ ($1\le T \le 1001$), denoting the number of test cases. For each test case:

Input one line containing one integer $S\,(0\le S \le 1000)$.
 

Output
For each test case:

If no solution, print "-1" in one line.

If any solution exists, print two integers $r, c\,(1\le r,c \le 25)$ in the first line, denoting the size of the mine-sweeper map. Following $r$ lines each contains a string only containing "." or "X" of length $c$ where ".", "X" denote non-mine cells and mine cells respectively, denoting each row of the mine-sweeper map you construct.

Please notice that you needn't print the numbers on non-mine cells since these numbers can be determined by the output mine-sweeper map.
 

Sample Input
2 7 128
 

Sample Output
2 4 X..X X... 5 19 .XXXX..XXXXX..XXXX. XX.......X....X..XX X........X....XXXX. XX.....X.X....X..XX .XXXX...XX....XXXX.
 

Hint

For the first test case, the map with numbers is as follows:

X21X
X211

The sum of these numbers equals 2+1+2+1+1=7.
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-04-25 21:47:23, Gzip enabled