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 :

Matrix representation of board is : [ _ 1 _ _ ] [ 2 _ _ _ ]
[ _ _ 2 _ ] [ 2 _ _ _ ] here blank space is represented by
'_' . Minimum colors to fill this board (given in the
picture)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 Work
directory.
Download the support files by clicking the Get Dev Files.
You will find the problem directories containing:
problem.h file
problem.c file
in your project directory.
Code the solution in.c file inside the problem directory
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 function int color(char board[4][4])
char board[4][4]board is 2 dimensional matrix of order M X
M where M = 4.
You can create more functions if required, but those
functions should be in the same file.

Step 2:
In your solution keep in mind the following constraints.
In this problem you have to write a program that finds the
minimum number of colors needed to fill a board in which
some of the elements are placed in advance.
Function color() will take 2 dimension board as a input.
Function color() returns the minimum number of colors that
could fill the board meeting the given condition.
Board is a 2 dimensional of M X M where M = 4 else 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 function is
int color(char board[4][4]) This function takes following
arguments.
board is 2 dimensional matrix of order M X M where M = 4.
This function returns minimum no of color by which board can
be filled.
The constraints are:
Board is a 2 dimensional of M X M where M = 4 else 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 C solutions
Header File
:
boardcoloring.h
Function Name
:
int color(char board1[4][4])
File Name
:
boardcoloring.c
For C++ solutions
Header File
:
boardcoloring.h
Class Name
:
BoardColoring
Function Name
:
int color(char board1[4][4])
File Name
:
boardcoloring.c


No Answer is Posted For this Question
Be the First to Post Answer

Post New Answer

More C++ General Interview Questions

A mXn matrix is given and rows and column are sorted as shown below.Write a function that search a desired entered no in the matrix .with minimum complexity 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

0 Answers  


What are mutator methods in c++?

0 Answers  


What is difference between rand () and srand ()?

0 Answers  


Do you know what are pure virtual functions?

0 Answers  


What are the new features that iso/ansi c++ has added to original c++ specifications?

0 Answers  






Why do we use the using declaration?

0 Answers  


What are the total number of lines written by you in C/C++? What is the most complicated or valuable program written in C/C++?

2 Answers   Intel,


Can I uninstall microsoft c++ redistributable?

0 Answers  


What is abstract class in c++?

0 Answers  


What is the difference between #define debug 0 and #undef debug?

0 Answers  


Is it possible to provide default values while overloading a binary operator?

0 Answers  


What are stacks? Give an example where they are useful.

0 Answers  


Categories