ACM Balloon Logo
 
ACM $Year Collegiate Programming Contest

South Central USA Regional Programming Contest

Cubic Rube
 
LSU Clocktower Logo
 
 Results
   Final Standings
   Problem Set
 
 Local Contest
   Home
   Schedule
   Information
   Details
   FAQ
 
 Contest Details
   Welcome
   Rules
   Hints
   Environment
   Compile Howto
 
 PC^2
   About PC^2
   Documentation
   Local Mirror
 
 ACM
   Intl Prog Contest
   South Central US Regional
   Registration
   
 

Introduction:

Working in a Rubik's Cube factory has always been your dream job, but you're a clumsy rube. Now you're trying to invent a new variation, a 5x5x5 Rubik's Cube! You just walked into the research lab with a working prototype and accidentally dropped it, breaking it into 2 pieces. You have one piece in your left hand and are trying to find the other. Unfortunately, the floor is littered with parts from previous attempts, making it difficult to find the missing piece. Luckily, you know how to program...

Given two solids composed of unit cubes, determine if they can be fit together to form a solid 5x5x5 cube.

Input:

The first line contains a single integer n indicating the number of data sets. The following lines contain the data sets.

Each data set will show side-by-side top-down views of each of the solids as a 5x5 array of numbers 0-9. Each number represents the height of the solid at that point (the number of unit cubes stacked at that point). If the height is 0, there is no solid present at that point. This is similar to providing a topographical map of each solid, and it is valid to assume that there are no gaps "under" any part of a solid that cannot be seen.

Note that each solid will be connected (i.e., a single piece) and may require translations (not just rotations) to join with a compatible solid.

Output:

For each data set, print, "Yes" if a solid 5x5x5 cube can be formed by fitting together the two halves, and print, "No" if a cube cannot be formed. Each word should appear on its own line.

Sample Input:

2
55551 11111
55551 11111
55551 11111
55551 11110
55552 00000
22222 33333
22222 33333
22222 33233
22222 33333
22222 33333

Sample Output:

Yes
No

   [Printable]
 
 LSU
   Home
   Search
   Campus Map
   ACM Chapter
   CCT
   Computing Services
   Computer Science
 
 Our Contests
   2004
   2003
   2002
   2001
   2000
   Index




The statements and opinions included in these pages are those of Hosts of the South Central USA Regional Programming Contest only. Any statements and opinions included in these pages are not those of Louisiana State University or the LSU Board of Supervisors.
© 1999, 2000, 2001, 2002, 2003, 2004 Isaac Traxler