var mat=new Array();
var pos=new Array();
var life=new Array();
var postx=new Array();
var v=new Array();
function myFunction() {
postx[0]="";
postx[1]="将軍";
postx[2]="大老";
postx[3]="駿河城代";
postx[4]="美濃藩主";
postx[5]="伊勢藩主";
postx[6]="信濃藩主";
postx[7]="老中";
postx[8]="駿河老中";
postx[9]="美濃守護";
postx[10]="伊勢守護";
postx[11]="信濃守護";
postx[12]="勘定奉行";
postx[13]="町奉行";
postx[14]="寺社奉行 ";
postx[15]="外国奉行";
postx[16]="美濃代官";
postx[17]="大垣代官";
postx[18]="伊勢代官";
postx[19]="松坂代官";
postx[20]="信濃代官";
postx[21]="松本代官";
for(s=1;s<16;s++){
mat[s]=new Array();
}
for(s=1;s<16;s++){
for(sx=1;sx<22;sx++){
mat[s][sx]=1;
}
}
for(s=1;s<16;s++){
mat[s][s]=100;
}
mat[1][4]=50;
mat[1][5]=50;
mat[1][6]=50;
mat[2][4]=50;
mat[2][5]=50;
mat[2][6]=50;
mat[2][7]=25;
mat[3][4]=50;
mat[3][5]=50;
mat[3][6]=50;
mat[3][8]=25;
mat[4][9]=50;
mat[4][7]=25;
mat[4][8]=25;
mat[4][16]=12;
mat[4][17]=12;
mat[5][10]=50;
mat[5][7]=25;
mat[5][8]=25;
mat[5][18]=12;
mat[5][19]=12;
mat[6][11]=50;
mat[6][7]=25;
mat[6][8]=25;
mat[6][20]=12;
mat[6][21]=12;
mat[7][9]=25;
mat[7][10]=25;
mat[7][11]=25;
mat[7][12]=50;
mat[7][13]=50;
mat[8][9]=25;
mat[8][10]=25;
mat[8][11]=25;
mat[8][14]=50;
mat[8][15]=50;
mat[9][16]=50;
mat[9][17]=50;
mat[9][12]=25;
mat[9][13]=25;
mat[9][14]=25;
mat[9][15]=25;
mat[10][18]=50;
mat[10][19]=50;
mat[10][12]=25;
mat[10][13]=25;
mat[10][14]=25;
mat[10][15]=25;
mat[11][20]=50;
mat[11][21]=50;
mat[11][12]=25;
mat[11][13]=25;
mat[11][14]=25;
mat[11][15]=25;
number=21;
t=1;
for(s=1;s<number+1;s++){
life[s]=100;
pos[s]=s;
}
for(s=1;s<number+1;s++){
v[s]=new Array();
}
for(s=1;s<number+1;s++){
for(sx=1;sx<22;sx++){
v[s][sx]=0;
}
v[s][s]=1;
}
paint();
for(t=2;t<22;t++){
var a=new Array();
sx=0;
for(s=1;s<number+1;s++){
if(life[s]>60)sx=sx+1;
if(life[s]>60)a[sx]=s;
}
m1=sx*Math.random();
m2=Math.floor(m1)+1;
m3=a[m2];
life[m3]=0;
for(s=1;s<16;s++){
maxp=0;
sxs=0;
for(sx=1;sx<number+1;sx++){
p1=0;
for(n=1;n<22;n++){
p1=p1+v[sx][n]*mat[s][n];
}
if(life[sx]<50)p1=0;
if(pos[sx]<s)p1=0;
if(p1>maxp)sxs=sx;
if(p1>maxp)maxp=p1;
}
pos[sxs]=s;
}
var b=new Array();
for(s=1;s<22;s++){
b[s]=0;
}
for(s=1;s<number+1;s++){
sx=pos[s];
if(life[s]<50)sx=0;
b[sx]=100;
}
sxs=0;
for(s=1;s<22;s++){
if(b[s]<50)sxs=s;
}
number=number+1;
life[number]=100;
pos[number]=sxs;
v[number]=new Array();
for(s=1;s<22;s++){
v[number][s]=0;
}
for(s=1;s<number+1;s++){
sx=pos[s];
v[s][sx]=1;
}
paint();
}
}
function paint(){
var id="14W7T8kNyzyi2tcJxdagNsjiZ14tk46wTNWRLCec6dUg";
ex1 = SpreadsheetApp.openById(id);
sheet = ex1.getSheetByName("data");
for(s=1;s<number+1;s++){
sx=pos[s];
if(life[s]>50)sheet.getRange(s,t).setValue(postx[sx]);
}
}
最終更新:2016年11月07日 23:46