Problem Statement
You will be given a
Definition
- Class:
- DrawPlanar
- Method:
- minArea
- Parameters:
- String[]
- Returns:
- int
- Method signature:
- int minArea(String[] graph)
- (be sure your method is public)
Notes
- Lattice points are ones with integer coordinates.
Constraints
- graph will contain between 1 and 7 elements, inclusive.
- Each element of graph will contain the same number of characters as there are elements in graph.
- Each character in graph will be 'T' or 'F'.
- Character i in element i of graph will be 'F'.
- Character i in element j of graph will be equal to character j in element i.
- The graph will be planar.
Examples
{"F"}
Returns: 0
With just one vertex, a single point suffices to draw the graph, so the area is 0.
{"FTF", "TFF", "FFF"}
Returns: 0
In this case, we can draw the vertices all in a line, again with area 0.
{"FTT", "TFT", "TTF"}
Returns: 1
Here, we can select any three corners of a 1x1 square.
{"FTTT", "TFTT", "TTFT", "TTTF"}
Returns: 4
{"FTTTT", "TFTTT", "TTFTT", "TTTFF", "TTTFF"}
Returns: 6
{"FTTTTT", "TFTTTT", "TTFFTT", "TTFFFF", "TTTFFF", "TTTFFF"}
Returns: 6
{"FFFFFF", "FFFFFF", "FFFFFF", "FFFFFF", "FFFFFF", "FFFFFF"}
Returns: 0
{"FTTTTT", "TFTTTT", "TTFFTT", "TTFFTF", "TTTTFF", "TTTFFF"}
Returns: 8
{"FTTTTTT", "TFTTTTF", "TTFFTTF", "TTFFTFT", "TTTTFFT", "TTTFFFF", "TFFTTFF"}
Returns: 12
{ "FTTTF", "TFTTT", "TTFTT", "TTTFT", "FTTTF" }
Returns: 6
{ "FTTFF", "TFTTT", "TTFTT", "FTTFT", "FTTTF" }
Returns: 4
{"FTTTTTT","TFTTTTT","TTFTTFF","TTTFFTF","TTTFFFT","TTFTFFF","TTFFTFF"}
Returns: 10
{"FTTTTTT", "TFTTTFT", "TTFFFFT", "TTFFTFF", "TTFTFTT", "TFFFTFT", "TTTFTTF"}
Returns: 15
{"FTTTTTT", "TFTTTFT", "TTFTFFF", "TTTFFTT", "TTFFFFT", "TFFTFFT", "TTFTTTF"}
Returns: 15
{"FTTTTTF","TFTTFTT","TTFTTFT","TTTFFFF","TFTFFTT","TTFFTFT","FTTFTTF"}
Returns: 12
{"FTTTTTF", "TFTTFFT", "TTFFTFT", "TTFFFTF", "TFTFFTF", "TFFTTFT", "FTTFFTF"}
Returns: 9
{"FTTTTTF","TFTTFFT","TTFFTFT","TTFFFTF","TFTFFTT","TFFTTFT","FTTFTTF"}
Returns: 9
{"FTTTTTF", "TFTTFFT", "TTFFTFT", "TTFFFTT","TFTFFTF","TFFTTFT","FTTTFTF"}
Returns: 9
{"FTTTTFF","TFTTFTF","TTFFTTF","TTFFFFT","TFTFFFT","FTTFFFT","FFFTTTF"}
Returns: 9
{"FTTTTFF","TFTFTTF","TTFTFTF","TFTFFFT","TTFFFFT","FTTFFFT","FFFTTTF"}
Returns: 9
{"FTTTTTF","TFTFTFT","TTFFFTT","TFFFTTT","TTFTFFT","TFTTFFT","FTTTTTF"}
Returns: 12
{"FTTTTTT","TFTFFTF","TTFFFFT","TFFFTFT","TFFTFTF","TTFFTFF","TFTTFFF"}
Returns: 4
{ "FFFFFFF", "FFTTFFF", "FTFTFFF", "FTTFFFF", "FFFFFTT", "FFFFTFT", "FFFFTTF" }
Returns: 3
{ "FTTFFTT", "TFTTFFF", "TTFTFFF", "FTTFFFF", "FFFFFTT", "TFFFTFT", "TFFFTTF" }
Returns: 3
{ "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF" }
Returns: 0
{"FTFFFFF", "TFTFFFF", "FTFTFFF", "FFTFTFF", "FFFTFTF", "FFFFTFT", "FFFFFTF"}
Returns: 0
{"FTFFFFF", "TFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF", "FFFFFFF"}
Returns: 0
{"FTTTT", "TFTFF", "TTFFF", "TFFFF", "TFFFF"}
Returns: 2
{"FTF", "TFT", "FTF"}
Returns: 0
{"FTTTT", "TFTTT", "TTFTT", "TTTFF", "TTTFF"}
Returns: 6
{"FTTFTT", "TFTTFT", "TTFTTF", "FTTFFF", "TFTFFF", "TTFFFF"}
Returns: 4
{"FTTFTT", "TFFTFT", "TFFTTF", "FTTFFF", "TFTFFF", "TTFFFF"}
Returns: 2
{"FTTTTF", "TFTTFF", "TTFFFF", "TTFFFF", "TFFFFF", "FFFFFF"}
Returns: 2
{"FTTTTT", "TFTFFF", "TTFFFF", "TFFFFF", "TFFFFF", "TFFFFF"}
Returns: 2
{"FTTTTTT", "TFTTTFT", "TTFFFFT", "TTFFTFF", "TTFTFTT", "TFFFTFT", "TTTFTTF" }
Returns: 15
{"FTFFFTT", "TFTTFTT", "FTFTTFT", "FTTFTTF", "FFTTFTT", "TTFTTFT", "TTTFTTF" }
Returns: 12
{"FTTFFFF", "TFTFFFF", "TTFFFFF", "FFFFTTF", "FFFTFTF", "FFFTTFF", "FFFFFFF" }
Returns: 3
{"FTFFTFT", "TFTTTFF", "FTFTFTF", "FTTFTTT", "TTFTFFT", "FFTTFFT", "TFFTTTF" }
Returns: 6
{"FTTT", "TFTT", "TTFT", "TTTF" }
Returns: 4
{"FTTTTTT", "TFTTTFT", "TTFFFFT", "TTFFTFF", "TTFTFTT", "TFFFTFT", "TTTFTTF" }
Returns: 15
{"FTFFFTT", "TFTTFTT", "FTFTTFT", "FTTFTTF", "FFTTFTT", "TTFTTFT", "TTTFTTF" }
Returns: 12
{"FTTFFFF", "TFTFFFF", "TTFFFFF", "FFFFTTF", "FFFTFTF", "FFFTTFF", "FFFFFFF" }
Returns: 3
{"FTFFTFT", "TFTTTFF", "FTFTFTF", "FTTFTTT", "TTFTFFT", "FFTTFFT", "TFFTTTF" }
Returns: 6
{"FTTT", "TFTT", "TTFT", "TTTF" }
Returns: 4