var p=new Array();
var group=new Array();
var px1,px2;
var number;
function sample(){
number=10;
for(s=1;s<number+1;s++){
p[s]=Math.random();
}
f();
$("#memo").html(group[2][2]);
}
function f(){
for(s=1;s<number+1;s++){
group[s]=new Array();
}
for(s=1;s<number+1;s++){
group[number][s]=s;
}
var t,page;
for(t=1;t<number;t++){
page=number+1-t;
g(page);
var h,sx;
for(s=1;s<number+1;s++){
sx=group[page][s];
h=0;
if(sx==px2)h=100;
if(h<50)group[page-1][s]=group[page][s];
if(h>50)group[page-1][s]=px1;
}
}
}
function g(g1){
var s1,s2;
var d1,minx;
px1=0;
px2=0;
minx=9999;
for(s1=1;s1<number+1;s1++){
for(s2=1;s2<number+1;s2++){
d1=gdet(g1,s1,s2);
if(s1==s2)d1=9999;
if(d1<minx)px1=s1;
if(d1<minx)px2=s2;
if(d1<minx)minx=d1;
}
}
}
function gdet(g1,s1,s2){
var s,sx;
var n1,n2;
var t1,t2;
var subx=new Array();
var suby=new Array();
sx=0;
for(s=1;s<number+1;s++){
if(group[g1][s]==s1)sx=sx+1;
if(group[g1][s]==s1)subx[sx]=s;
}
n1=sx;
sx=0;
for(s=1;s<number+1;s++){
if(group[g1][s]==s2)sx=sx+1;
if(group[g1][s]==s2)suby[sx]=s;
}
n2=sx;
var d1,mind;
mind=9999;
for(s=1;s<n1+1;s++){
for(sx=1;sx<n2+1;sx++){
t1=subx[s];
t2=suby[sx];
d1=det(t1,t2);
if(d1<mind)mind=d1;
}
}
return mind;
}
function det(s1,s2){
var d1;
d1=p[s1]-p[s2];
d1=d1*d1;
return d1;
}
最終更新:2014年01月17日 00:58