アットウィキロゴ

鉄道887

var d_line=new Array();
var a_line=new Array();
var b_line=new Array();
var number_line;
var number;
 
var trip=new Array();
var number_trip;
 
 
function sample(){
 
number=100;    
 
for(s=1;s<number;s++){
a_line[s]=s;
b_line[s]=s+1;   
d_line[s]=1;
}
 
number_line=99;    
 
for(k=1;k<101;k++){    
 
gotrip();
 
for(tr1=1;tr1<number_trip;tr1++){
for(tr2=tr1+1;tr2<number_trip+1;tr2++){    
plus(tr1,tr2);    
}}
 
}
 
$("#memo").html(number_line);    
 
}
 
function plus(tr1,tr2){
 
var x1=trip[tr1];
var x2=trip[tr2];    
var l1=check_line(x1,x2);
 
if(l1==0)number_line=number_line+1;
if(l1==0)a_line[number_line]=x1;
if(l1==0)b_line[number_line]=x2;
if(l1==0)d_line[number_line]=dis_trip(tr1,tr2);        
}
function dis_trip(tr1,tr2){
 
d1=0;    
for(s=tr1;s<tr2;s++){
sx=check_line(trip[s],trip[s+1]);
d1=d1+d_line[sx];    
}
 
return d1;    
}
 
 
function check_line(s1,s2){
 
var s,ss;    
    ss=0;
for(s=1;s<number_line+1;s++){
h=0;
if(a_line[s]==s1)h=h+1;
if(b_line[s]==s2)h=h+1;  
if(h==2)ss=s;    
}
 
for(s=1;s<number_line+1;s++){
h=0;
if(b_line[s]==s1)h=h+1;
if(a_line[s]==s2)h=h+1;  
if(h==2)ss=s;    
}
 
 
return ss;
 
}
 
function gotrip(){
 
trip[1]=fast();    
number_trip=1;
 
var mode=0;    
while(mode<50){
var m1=search(trip[number_trip]);    
var cc=check_trip(m1);    
if(cc<50)number_trip=number_trip+1;
if(cc<50)trip[number_trip]=m1;
if(cc>50)mode=100;
}    
 
}
 
 
function check_trip(delta){
 
var s,chx;    
    chx=0;
for(s=1;s<number_trip+1;s++){
if(trip[s]==delta)chx=100;
}
return chx;
 
}
 
 
 
function search(delta){
 
var chx=new Array();
var z=new Array();
var number_z;
 
for(s=1;s<number+1;s++){    
chx[s]=0;    
}
 
for(s=1;s<number_line+1;s++){
s1=b_line[s];
if(a_line[s]==delta)chx[s1]=100;
}
 
for(s=1;s<number_line+1;s++){
s1=a_line[s];
if(b_line[s]==delta)chx[s1]=100;
}    
 
var sx=0;
for(s=1;s<number+1;s++){    
if(chx[s]>50)sx=sx+1;
if(chx[s]>50)z[sx]=s;    
}
number_z=sx;
 
var n1=number_z*Math.random();
var n2=Math.floor(n1)+1;    
 
return z[n2];    
 
}
 
 
function fast(){
 
var n1=number*Math.random();
 var n2=Math.floor(n1)+1;
 
return n2;    
}
最終更新:2015年05月02日 11:54