题目1140:八皇后
2014-02-08 20:58
260 查看
import java.io.IOException; import java.io.FileReader; import java.io.InputStreamReader; import java.io.BufferedReader; import java.util.Scanner; import java.util.Vector; import java.util.Arrays; class Main { public static final boolean DEBUG = false; public static Vector<String> v; public static boolean[][] vis; public static byte[] ans; public static void dfs(int cur) { //System.out.println("cur=" + cur); if (cur == 8) { String s = new String(ans); //System.out.println("s:" + s); v.add(s); return; } for (int i = 0; i < 8; i++) { if (!vis[0][i] && !vis[1][i - cur + 7] && !vis[2][i + cur]) { ans[cur] = (byte)(i + 1 + '0'); vis[0][i] = vis[1][i - cur + 7] = vis[2][i + cur] = true; dfs(cur + 1); vis[0][i] = vis[1][i - cur + 7] = vis[2][i + cur] = false; } } } public static void main(String[] args) throws IOException { Scanner cin; int n, t; if (DEBUG) { cin = new Scanner(new FileReader("d:\\OJ\\uva_in.txt")); } else { cin = new Scanner(new InputStreamReader(System.in)); } v = new Vector<String>(); vis = new boolean[3][15]; ans = new byte[8]; dfs(0); t = cin.nextInt(); while (t-- > 0) { n = cin.nextInt(); System.out.println(v.elementAt(n - 1)); } } }
相关文章推荐
- 九度 1140 题目1140:八皇后
- 【LeetCode】N-Queens && 【九度】题目1140:八皇后
- 九度 oj 题目1140:八皇后
- 回溯_题目1140:八皇后
- 九度 1140 - 回溯 - 八皇后
- 八皇后代码--九度oj-1140
- 八皇后代码--九度oj-1140
- 九度OJ 1140 八皇后
- 九度[1140]八皇后
- OJ_1140 八皇后
- 九度OJ 1140 八皇后(回溯递归第三发)
- 八皇后的题目
- 九度 1140 八皇后
- 题目1140: 进制转换
- 题目1140:八皇后
- 题目1140:八皇后
- 1140_八皇后
- [递归经典题目]八皇后问题
- 八皇后问题
- SQL面试题目汇总