Board coloring problem description, Programming Languages

Assignment Help:

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:

641_board_coloring.png

            For Example:

Given Board :

821_board_coloring_1.png

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:

  1. Specify the work directory path in the 'Work directory Path' field. The path should correspond to your solution Work directory.
  2. Download the support files by clicking the Get Dev Files.
  3. You will find the problem directories containing:
    • problem.h file
    • problem.c file

in your project directory.

  1. Code the solution in.c file inside the problem directory
  2. 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.

  1. 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.
  2. Function color() will take 2 dimension board as a input.
  3. Function color() returns the minimum number of colors that could fill the board meeting the given condition.
  4. Board is a 2 dimensional of M X M where M = 4 else return 0
  5. 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:

  1. Board is a 2 dimensional of M X M where M = 4 else return 0
  2. 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

General Instructions

    *

The file / class names, functions, method signatures, header files are to be used as mentioned in the problem statement. Do not use your own names or change the method signatures and fields. You can add any number of additional methods.

    *

For C solutions, change the value of "C_OR_CPP" macro in header file as 1 and for C++ solutions change the value as 2.

    *

Incase of iostream.h specify as iostream only.

    *

Command line options for the main() function are not supported currently.


Related Discussions:- Board coloring problem description

Dating game program, You are to write a program that determines the day of ...

You are to write a program that determines the day of the week for New Year's Day in the year 3000. To do this, you must create your own date class (MyDate) and use the following i

Write a recursive function to generate anagrams, An anagram is a type of wo...

An anagram is a type of word play, the result of rearranging the letters of a word or phrase to produce a new word or phrase. For example the anagram of tea is tea, tae, eat, eta,

determine if dna sequence is periodic or not, A string s is said to be per...

A string s is said to be periodic with a period α, if s is α k for some k > 2. (Note that α k is the string formed by concatenating k times.) A DNA sequence s is called a tande

Ws-addressing, WS-Addressing, WS-Reliable Texting and WS-Security WCF tools...

WS-Addressing, WS-Reliable Texting and WS-Security WCF tools many innovative Web solutions (WS) expectations such as WS-Addressing, WS-Reliable Texting and WS-Security. With the di

Write a program for random number generator, * Comments in your code are re...

* Comments in your code are required * Main Program Operation:  # Your program should first prompt the user for an integer to seed the random number Generator. "Enter an seed

Retrive unicode text using vb.net ado.net, How Can I Retrive Unicode CSV Fi...

How Can I Retrive Unicode CSV File the ADO.net VB.net

Visual basic.net, how to create a screen for messages for a data transmissi...

how to create a screen for messages for a data transmission system

Write the html code to bind this xml data, Question: (a) (i) Describe w...

Question: (a) (i) Describe what an XML Data Island is and outline the restrictions of using a Data Island. (ii) The following XML file book.xml is used to keep track of a l

Class Project, I need help getting started with a class project of creating...

I need help getting started with a class project of creating a project in the Perl programming language. I was thinking of maybe doing an employee directory

Dbms, 2. Design an ER diagram for an IT training group database that will m...

2. Design an ER diagram for an IT training group database that will meet the information need’training programme. Clearly indicate the entities, relationships and the key constrain

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd