var x=new Array();
var y=new Array();
var number;
var number_line;
var a_line=new Array();
var b_line=new Array();
var d_line=new Array();
var trip=new Array();
var number_trip;
function sample(){
faststep();
gotrip();
paint();
}
function gotrip(){
trip[1]=fast();
number_trip=1;
var mode=0;
while(mode<40){
var n=search(trip[number_trip]);
var chx=check(n);
if(chx<50)number_trip=number_trip+1;
if(chx<50)trip[number_trip]=n;
if(chx>50)mode=100;
}
}
function check(delta){
var s,ch;
ch=0;
for(s=1;s<number_trip+1;s++){
if(trip[s]==delta)ch=100;
}
return ch;
}
function search(delta){
var sx,s;
var z=new Array();
sx=0;
for(s=1;s<number_line+1;s++){
if(a_line[s]==delta)sx=sx+1;
if(a_line[s]==delta)z[sx]=b_line[s];
}
for(s=1;s<number_line+1;s++){
if(b_line[s]==delta)sx=sx+1;
if(b_line[s]==delta)z[sx]=a_line[s];
}
var c=sx;
var c1=c*Math.random();
var c2=Math.floor(c1)+1;
var c3=z[c2];
return c3;
}
function fast(){
var m1=number*Math.random();
var m2=Math.floor(m1)+1;
return m2;
}
function paint(){
var sub=new svgpaint();
str="<svg width=\"500\" height=\"500\">";
for(s=1;s<number_trip;s++){
s1=trip[s];
s2=trip[s+1];
str=str+sub.line(50*x[s1],50*y[s1],50*x[s2],50*y[s2],4,"red");
}
str=str+"</svg>";
$("#memo").html(str);
}
function faststep(){
var s,sx,tx,delta;
tx=0;
for(s=1;s<11;s++){
for(sx=1;sx<11;sx++){
tx=tx+1;
x[tx]=sx;
y[tx]=s;
}}
number=tx;
number_line=0;
for(delta=1;delta<101;delta++){
changex(delta);
}
for(delta=1;delta<101;delta++){
changey(delta);
}
}
function changex(delta){
var x1=x[delta]+1;
var y1=y[delta];
var sp=0;
var s,h;
for(s=1;s<number+1;s++){
h=0;
if(x[s]==x1)h=h+1;
if(y[s]==y1)h=h+1;
if(h==2)sp=s;
}
var ch;
ch=0;
for(s=1;s<number_line+1;s++){
h=0;
if(a_line[s]==delta)h=h+1;
if(b_line[s]==sp)h=h+1;
if(h==2)ch=100;
}
for(s=1;s<number_line+1;s++){
h=0;
if(b_line[s]==delta)h=h+1;
if(a_line[s]==sp)h=h+1;
if(h==2)ch=100;
}
if(sp<1)ch=100;
if(ch<50)number_line=number_line+1;
if(ch<50)a_line[number_line]=delta;
if(ch<50)b_line[number_line]=sp;
if(ch<50)d_line[number_line]=1;
}
function changey(delta){
var x1=x[delta];
var y1=y[delta]+1;
var sp=0;
var s,h;
for(s=1;s<number+1;s++){
h=0;
if(x[s]==x1)h=h+1;
if(y[s]==y1)h=h+1;
if(h==2)sp=s;
}
var ch;
ch=0;
for(s=1;s<number_line+1;s++){
h=0;
if(a_line[s]==delta)h=h+1;
if(b_line[s]==sp)h=h+1;
if(h==2)ch=100;
}
for(s=1;s<number_line+1;s++){
h=0;
if(b_line[s]==delta)h=h+1;
if(a_line[s]==sp)h=h+1;
if(h==2)ch=100;
}
if(sp<1)ch=100;
if(ch<50)number_line=number_line+1;
if(ch<50)a_line[number_line]=delta;
if(ch<50)b_line[number_line]=sp;
if(ch<50)d_line[number_line]=1;
}
最終更新:2015年05月02日 08:28