board colouring, C/C++ Programming

in this problem you are given a board in which some of the elements are placed..each element represent ancolor.fill the other elements in the board such that none of the adjacent element should of the same color.find the minimum no ofcolors that should used to fill the blank spaces in the board.color representation 0,1,2,3,4......
Posted Date: 8/30/2012 1:44:39 AM | Location : United States







Board Coloring

Problem Description


In this problem you are given a board in which some of the elements are placed as shown in diagram below. Each element represents a color.
Fill the other elements in the board, such that none of the adjacent elements (vertically, horizontally and diagonally) should be of the same color.
Find out the minimum number of colors that should be used to fill the blank spaces in the board, so that the above condition is met.
Color representation is -: 0, 1, 2, 3, 4, 5, 6, 7…………………….
There is sample board:

For Example:

Given Board :

The matrix representation of board is :
[ _ 1 _ _ ]
[ 2 _ _ _ ]
[ _ _ 2 _ ]
[ 2 _ _ _ ]
In the above example the blank space is represented by ''_'' .
The minimum number of colors needed to fill the board in the example is 4.

Instruction to work with Open PBT Client:

Specify the work directory path in the ''Work Directory Path'' field. The path should correspond to your solution project directory.
Download the support files by clicking the Get Dev Files.
You will find the following three folders:
bin
src
lib
in your work directory.
Code the solution in . java file inside the src folder
All required files will be downloaded to your work directory. Creating additional files is strongly discouraged.

Step 1:
In your solution file:

Implement your logic in public int color(char[][] board) in class BoardColoring .
char[][] board : board is 2 dimensional matrix of order M X M where M = 4.

You can create more methods but, do it in the same class.

Step 2:
In your solution keep in mind the following constraints.

In this problem you have to write a program to find the minimum no of colors to fill a board where some of the elements of different color are already placed.
Method color() will take 2 D board as a input.
Method color() will return minimum no of colors which can fill the board with given condition.
The board should be a 2-dimensional M X M matrix, where M =4 otherwise return 0
Fill the other elements in the board, such that none of the adjacent elements (vertically, horizontally and diagonally) should be of the same color.

The Prototype of the method is:

public int color(char[][] board).
This method takes following arguments.

board is 2 dimensional matrix of order M X M where M = 4.

This method returns minimum no of color by which board can be filled.

The constraints are:

The board should be a 2-dimensional M X M matrix, where M =4 otherwise return 0
Fill the other elements in the board, such that none of the adjacent elements (vertically, horizontally and diagonally) should be of the same color.

Example 1
Input : { 2 0 _ 1 }
{ _ 1 _ _ }
{ _ 2 _ 0 }
{ _ _ _ 1 }
Output : 5

Explanation:
We need a minimum 5 different colors to complete the board.

Example 2
Input : { 2 0 _ 1 3}
{ _ 1 _ _ 2}
{ _ 2 _ 0 1}
{ _ _ _ 1 2}
{ _ _ _ _ 0}
Output : 0


Explanation:
Size of the board is greater than 4X4.

Example 3
Input : { _ 0 }
{ 1 _ }
Output : 0


Explanation:
Size of the board is less than 4X4.

For Java solutions
Package Name : test.boardcoloring
File Name : BoardColoring.java
Class Name : BoardColoring
Method Names : public int color(char[][] board)
Posted by diana | Posted Date: 9/4/2012 4:24:01 AM


Related Discussions:- board colouring, Assignment Help, Ask Question on board colouring, Get Answer, Expert's Help, board colouring Discussions

Write discussion on board colouring
Your posts are moderated
Related Questions

Develop a client and a server for an instant messaging system based on UDP and IPv4

Implementation of the Stack class in C++: How to implement stack class in c++. int Stack::push(int elem) {    if (top    {       list[top++] = elem;       r

how to make the coding

- Create a program that uses at least two functions that will be called from your main. This program is a number game program that asks for parts of your phone and after manipulati

Derived Data Type: Array is derived data type to store large collection of data of only one data type. int mark[100]; char names[25]; Function: will be discussed early

project on business management

Program is to search for a given character in a string: Program is to search for a given character in a string and print point of match char *stsearch(char *string, char sea

when you allocate memory with new[], you ought to free the memory via delete[]. While you allocate memory along 'new', then use 'delete' with no the brackets. You employ new[] to a

Both malloc & new functions are utilized for dynamic memory allocations & the basic difference is: malloc need a special "typecasting" while it allocates memory for eg. if the poin