アットウィキロゴ

excel98877

 var number;
var sheet;
var ex1;
 
function sumo() {
 
 
 
var id="1usqXDtddzi8afnx1XwWRkTYORCr5WOs1-h6Ii5YKQ8E";
 
 
 ex1 = SpreadsheetApp.openById(id);
 sheet = ex1.getSheetByName("data");
 
 
 
  number=21;
 
  age[1]=6;
  age[2]=5;
  age[3]=5;
  age[4]=4;
  age[5]=4;
  age[6]=4;
  age[7]=3;
  age[8]=3;
 age[9]=3;
  age[10]=3;
  age[11]=2;
  age[12]=2;
  age[13]=2;
  age[14]=2;
  age[15]=2;
  age[16]=1;
  age[17]=1;
  age[18]=1;
 age[19]=1;
  age[20]=1;
   age[21]=1;
 
 
  var sx;
 
  for(s=1;s<number+1;s++){
  pos[s]=s;
  }
 
   for(s=1;s<number+1;s++){
  life[s]=100;
  }
 
 
 
  post[0]="引退"
  post[1]="首相";
  post[2]="幹事長";
  post[3]="総務会長";
  post[4]="政調会長";
  post[5]="国対委員長";
  post[6]="幹事代理";
  post[7]="総務代理";
  post[8]="政調代理";
  post[9]="国対代理";
  post[10]="幹事";
  post[11]="幹事";
  post[12]="幹事";
  post[13]="総務";
  post[14]="総務";
  post[15]="総務";
  post[16]="部会";
  post[17]="部会";
  post[18]="部会";
  post[19]="国対";
  post[20]="国対";
  post[21]="国対";
 
 
 for(s=1;s<number+1;s++){
 sx=pos[s];
sheet.getRange(s, 1).setValue(post[sx]);
 }
 
  var time;
 
  for(time=2;time<50;time++){  
 
change();
 
freshman();  
 
for(s=1;s<number+1;s++){
sx=pos[s];
sheet.getRange(s, time).setValue(post[sx]);
}
 
  }
 
 
}
 
 
function change(){
 
 
  for(a1=1;a1<7;a1++){
  del(a1);
  }
 
  for(p1=1;p1<16;p1++){
  if(check(p1)<50)move(p1);
  }
 
for(s=1;s<number+1;s++){
age[s]=age[s]+1;
}   
 
 
 
}
 
function freshman(){
 
pos[number+1]=16;
 pos[number+2]=17; 
pos[number+3]=18;
 pos[number+4]=19; 
pos[number+5]=20;
 pos[number+6]=21; 
 
  for(s=1;s<7;s++){
  life[number+s]=100;
  age[number+s]=1;
  }
 
  number=number+6;
 
}
 
function check(p1){
  var ch,h;
  ch=0;
   for(s=1;s<number+1;s++){  
   h=0;
     if(pos[s]==p1)ch=100;  
   }
  return ch;
}
 
 
function move(p1){
 
  var s,h,sx,maxrank;
 
  maxrank=100;
  for(s=1;s<number+1;s++){  
  h=0;
  if(life[s]>50)h=h+1;
  if(pos[s]>p1)h=h+1;  
  if(pos[s]<maxrank)h=h+1;  
  if(h==3)maxrank=pos[s];
   if(h==3)sx=s; 
  }
 
 
  pos[sx]=p1;
 
}
 
 
function del(a1){
 
var p=new Array();
var s,sx,h,pnumber;
  var maxrank,sxs;
  sx=0;
  for(s=1;s<number+1;s++){  
h=0;
    if(life[s]>50)h=h+1;  
   if(age[s]==a1)h=h+1;  
  if(h==2)sx=sx+1;
  if(h==2)p[sx]=s; 
  }
 
  pnumber=sx;
 
 
  maxrank=0;
  sxs=0;
 for(s=1;s<pnumber+1;s++){  
 sx=p[s];
 if(pos[sx]>maxrank)sxs=sx;
 if(pos[sx]>maxrank)maxrank=pos[sx];
 }
 
pos[sxs]=0;  
  life[sxs]=0;  
 
 
 
 
}
 
最終更新:2016年03月16日 08:00