package queen;
public class queen {static boolean col[] = new boolean[8];static boolean main_diagonal[] = new boolean[15];static boolean counter_diagonal[] = new boolean[15];static int record[]=new int[8];static int count = 0;public static void search(int x) {for (int i = 0; i < 8; i++) {if (col[i] == false && main_diagonal[i - x + 7] == false && counter_diagonal[i + x] == false) {record[x]=i;if (x == 7) {count++;for (int k = 0; k < 8; k++) {for(int j=0;j<8;j++){if (j==record[k]) {System.out.print("Q");}else System.out.print("*");}System.out.println("");}System.out.println("\n");return;} col[i] = true;main_diagonal[i - x + 7] = true;counter_diagonal[i + x] = true;search(x + 1);col[i] = false;main_diagonal[i - x + 7] = false;counter_diagonal[i + x] = false;} elsecontinue;}}public static void main(String[] args) {search(0);System.out.println("共有"+count+"解法");}}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!