Question: 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.
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 placement 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
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
Get step-by-step solutions from verified subject matter experts
