Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

1 Problem description Main objective: Solve the n queens problems. You have to place n queens on an n n chessboard such that no two

1 Problem description Main objective: Solve the n queens problems. You have to place n queens on an n n chessboard such that no two attack each other. Important: the chessboard should be indexed starting from 1, in standard (x, y) coordinates. Thus, (4, 3) refers to the square in the 4th column and 3rd row. We have a slight twist in this assignment. We will take as input the position of one queen, and have to generate a solution with a queen in this position. Specifics: You should provide a Makefile. On running make, it should create NQueens.jar. You should run the jar with two command line arguments: the first is an input file, the second is the output file. For example, we would call the command: java -jar NQueens.jar in.txt solution.txt The file in.txt will have inputs to the main program (as described below), and the file solution.txt will have the desired solution. Each line of the input file corresponds to a different instance. Each line of the input file will have three integers: the chessboard size, the column where the input queen is placed, and the row where the input queen is placed. For example, the file may look like: 7 3 2 4 1 1 The first line means we have a 7 7 chessboard, with one queen placed at (3, 2). We wish to place 6 more queens so that none of the 7 queens attack any other. The second line means we have a 4 4 chessboard, with one queen at (1, 1). We wish to place 3 more queens without any attacks. So on and so forth. Output: On running the command, the following should be printed in the output file. For each line of the input file, there is a line in the output file with the placement2 of queens. If there is no solution to the problem, print No solution (with a newline at the end) If there is a solution, print the position of each queen as followed by the position for the next queen. The positions should be in increasing order of column, so first column first, second column second, etc. Please follow this format exactly, so that the checking script works for you. The last character on the line will be a space, then followed by a newline. This format should make your code easier to write. For example, the output for the input described above could be: 1 1 2 5 3 2 4 6 5 3 6 7 7 4 No solution Observe how 3 2 is part of the first solution, since we started with a queen there. The solution is not unique, so your code might find some other placement. On the other hand, a 4 4 chessboard with a queen at (1, 1) has no solution.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Design And Implementation

Authors: Edward Sciore

2nd Edition

3030338355, 978-3030338350

More Books

Students also viewed these Databases questions

Question

=+ What are the specific issues to be proposed for negotiation?

Answered: 1 week ago

Question

What are Decision Trees?

Answered: 1 week ago

Question

What is meant by the Term Glass Ceiling?

Answered: 1 week ago