1000 queens using Java under 30s
import java.util.ArrayList; import java.util.Collections; import java.util.Random; public class NQEEN { static final int N=1000; static Random rand = new Random(); // i=col, get(i) = row //h - so cap doi gay nguy hien cho nhau //cung dong: get(i) = get(j) //duong cheo song song duong cheo chinh: get(i)-i = get(j)-j //song song duong cheo phu: get(i)+i = get(j)+j static int get_h_cost(ArrayList <Integer>board){ int h = 0; for(int i=0; i<board.size(); i++){ for(int j=i+1; j<board.size(); j++){ if((board.get(i) - i == board.get(j) - j) || (board.get(i) + i == board.get(j) + j)) h ++; ...