var dimpx,dim,cc; var seed,cscore; var board=null; var boarde=null; var dx=[0,1,0,-1]; var dy=[-1,0,1,0]; var pendingrem=[]; var sol=[]; var optscore; var ismobile; String.prototype.getHash=function() { var ret=0,ch; if(this.length===0)return ret; for(var i=0;i>>=0; } return ret; } function randomInt(min,max) { seed*=214013;seed+=2531011;seed&=0xffffffff; return min+(seed^seed>>15)%(max-min+1); } function init() { if( navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/webOS/i) || navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPod/i) || navigator.userAgent.match(/BlackBerry/i) || navigator.userAgent.match(/Windows Phone/i) ) ismobile=true; dimpx=(window.innerWidth>window.innerHeight?window.innerHeight:window.innerWidth)*(ismobile?0.9:0.75); document.getElementById("containerDiv").style.width=dimpx+"px"; document.getElementById("containerDiv").style.height=dimpx+"px"; } function gameInit() { for(var e=document.getElementById("containerDiv").children,i=0;i=0&&i+dx[k]=0&&j+dy[k]=0&&i+dx[k]=0&&j+dy[k]=0&&i+dx[k]=0&&j+dy[k]=0&&i+dx[k]=0&&j+dy[k]=0&&i+dx[k]=0&&j+dy[k]=0&&i+dx[k]=0&&j+dy[k]-1) for(var i=0;i=0&&i+dx[k]=0&&j+dy[k]=0&&p.x=0&&p.y0;--i) for(var k=dim-1;k>=0;--k) if(b[k][j]===0){var t=b[k][j];b[k][j]=b[k+1][j];b[k+1][j]=t;} for(var k=0;kmaxn){stPnt=new Pnt(j,i);maxn=num;finalcol=col;} else if(num==maxn) { if(j