public
class
queens
...
{
static int q=10;
static int[] i=new int[q];
static int count=0;
public static void main(String[] args)...{
long t = System.currentTimeMillis();
scan(0);
System.out.println("totle results:"+count);
System.out.println("totle time:"+(System.currentTimeMillis()-t));
}
private static void scan(int n)...{
if (n==q)...{
// for (int k=0;k<q;k++) System.out.print(i[k]+(k==q-1?" ":","));
count++;
return;
}
i[n]=0;
while(i[n]<q)...{
i[n] = i[n]+1;
if (check(n))...{
scan(n+1);
}
}
}
private static boolean check(int n)...{
for(int j=0;j<n;j++)...{
if (i[j]==i[n] || i[j]-i[n]==j-n || i[j]-i[n]==n-j )...{
return false;
}
}
return true;
}
}
static int q=10;
static int[] i=new int[q];
static int count=0;
public static void main(String[] args)...{
long t = System.currentTimeMillis();
scan(0);
System.out.println("totle results:"+count);
System.out.println("totle time:"+(System.currentTimeMillis()-t));
}
private static void scan(int n)...{
if (n==q)...{
// for (int k=0;k<q;k++) System.out.print(i[k]+(k==q-1?" ":","));
count++;
return;
}
i[n]=0;
while(i[n]<q)...{
i[n] = i[n]+1;
if (check(n))...{
scan(n+1);
}
}
}
private static boolean check(int n)...{
for(int j=0;j<n;j++)...{
if (i[j]==i[n] || i[j]-i[n]==j-n || i[j]-i[n]==n-j )...{
return false;
}
}
return true;
}
}