zoukankan      html  css  js  c++  java
  • 山屋惊魂 · 大模拟 · 码长破千 · 祭

    啥也不说,放代码(额~,虽然没有跟其他人比不是最长,也不错了)

    缩放品尝,风味更加

       1 #include<iostream>
       2 #include<cstdio>
       3 #include<queue>
       4 #include<cmath>
       5 using namespace std;
       6 char a[20];
       7 int n,w,x,num[6][11],now[6];
       8 double f[110][10][10][10][10],p[11][18],sum[11][18];
       9 double ans[6][11];
      10 struct node{
      11     int a,b,c,d;
      12 };
      13 queue<node>q;
      14 void prework(){
      15     p[0][0]=1;
      16     for(register int i=1;i<=8;i++){
      17         for(register int j=0;j<=16;j++){
      18             for(register int k=0;k<=2;k++){
      19                 p[i][j+k]+=p[i-1][j]*(1.0/3.0);
      20             }
      21         }
      22     }
      23     for(register int i=1;i<=8;i++){
      24         sum[i][0]=p[i][0];
      25         for(register int j=1;j<=16;j++){
      26             sum[i][j]=sum[i][j-1]+p[i][j];
      27         }
      28     }
      29 }
      30 int work(){
      31     int type=0;
      32     char opt;
      33     scanf("%s",a);
      34     getchar();
      35     opt=getchar();
      36     if(opt=='+'||opt=='-'){
      37         scanf("%d",&x);
      38         x=(opt=='+')?x:-x;
      39         opt=getchar();
      40         if(opt=='?') type=4;
      41         if(a[0]=='M') type+=1;
      42         else if(a[0]=='S'&&a[1]=='p') type+=2;
      43         else if(a[0]=='S') type+=3;
      44         else type+=4;
      45         return type;
      46     }
      47     if(opt=='>'){
      48         opt=getchar();
      49         scanf("%d",&w);
      50         if(opt=='=') type=40;
      51         else type=8;
      52     }
      53     else if(opt=='<'){
      54         opt=getchar();
      55         scanf("%d",&w);
      56         if(opt=='=') type=56;
      57         else type=24;
      58     }
      59     int las=0,now=0;
      60     if(a[0]=='M') las=1;
      61     else if(a[0]=='S'&&a[1]=='p') las=2;
      62     else if(a[0]=='S') las=3;
      63     else las=4;
      64     scanf("%s",a);
      65     if(a[0]=='M') now=1;
      66     else if(a[0]=='S'&&a[1]=='p') now=2;
      67     else if(a[0]=='S') now=3;
      68     else now=4;
      69     type+=(las-1)*4+now;
      70     scanf("%d",&x);
      71     opt=getchar();
      72     if(opt=='?') type+=64;
      73     return type;
      74 }
      75 int main(){
      76     //freopen("1.in","r",stdin);
      77     //freopen("1.out","w",stdout);
      78     prework();
      79     for(register int i=1;i<=4;i++){
      80         scanf("%s%d",a+1,&now[i]);
      81         for(register int j=1;j<=8;j++) num[i][j]=a[j]-'0';
      82     }
      83     scanf("%d",&n);
      84     f[0][now[1]][now[2]][now[3]][now[4]]=1;
      85     q.push((node){now[1],now[2],now[3],now[4]});
      86     for(register int t=1;t<=n;t++){
      87         int type=work();
      88         while(q.size()){
      89             int a=q.front().a,b=q.front().b,c=q.front().c,d=q.front().d;q.pop();
      90         //    cout<<"t="<<t-1<<" a="<<a<<" b="<<b<<" c="<<c<<" d"<<d<<" type="<<type<<" f"<<f[t-1][a][b][c][d]<<endl;
      91             switch (type){
      92                 case 1:{//Might  + x
      93                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d];
      94                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d];
      95                     break;
      96                 }
      97                 case 2:{//Speed + x
      98                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d];
      99                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d];
     100                     break;
     101                 }
     102                 case 3:{//Sanity + x
     103                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d];
     104                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d];
     105                     break;
     106                 }
     107                 case 4:{//Knowledge + x
     108                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d];
     109                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d];
     110                     break;
     111                 }
     112                 case 5:{//Might + x个判定
     113                     for(register int i=0;i<=16;i++){
     114                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     115                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     116                     }
     117                     break;
     118                 }
     119                 case 6:{//Speed + x个判定
     120                     for(register int i=0;i<=16;i++){
     121                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     122                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     123                     }
     124                     break;
     125                 }
     126                 case 7:{//Sanity + x个判定
     127                     for(register int i=0;i<=16;i++){
     128                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     129                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     130                     }
     131                     break;
     132                 }
     133                 case 8:{//Knowledge + x个判定
     134                      for(register int i=0;i<=16;i++){
     135                          if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     136                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*p[(int)abs(x)][i];
     137                     }
     138                     break;
     139                 }
     140 /*--------------------------------------------------------------------------------------------------------*/
     141                 case 9:{//Might >w 使 Might + x
     142                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     143                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     144                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     145                     break;
     146                 }
     147                 case 10:{//Might >w 使 Speed + x
     148                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     149                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     150                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     151                     break;
     152                 }
     153                 case 11:{ //Might >w 使Sanity+ x 
     154                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     155                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     156                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     157                     break;
     158                 }
     159                 case 12:{//Might >w 使Knowledge + x
     160                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     161                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     162                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     163                     break;
     164                 }
     165                 case 13:{//Speed >w 使Might + x
     166                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     167                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     168                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     169                     break;
     170                 }
     171                 case 14:{//Speed >w 使Speed + x
     172                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     173                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     174                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     175                     break;
     176                 }
     177                 case 15:{//Speed >w 使Sanity + x 
     178                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     179                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     180                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     181                     break;
     182                 }
     183                 case 16:{//Speed >w 使Knowledge + x 
     184                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     185                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     186                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     187                     break;
     188                 }
     189                 case 17:{//Sanity >w 使Might + x
     190                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     191                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     192                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     193                     break;
     194                 }
     195                 case 18:{//Sanity >w 使Speed + x 
     196                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     197                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     198                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     199                     break;
     200                 }
     201                 case 19:{//Sanity >w 使Sanity + x 
     202                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     203                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     204                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     205                     break;
     206                 }
     207                 case 20:{//Sanity >w 使Knowledge + x 
     208                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     209                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     210                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     211                     break;
     212                 }
     213                 case 21:{//Knowledge >w 使Might + x 
     214                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     215                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     216                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     217                     break;
     218                 }
     219                 case 22:{//Knowledge >w 使Speed + x 
     220                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     221                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     222                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     223                     break;
     224                 }
     225                 case 23:{//Knowledge >w 使Sanity + x 
     226                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     227                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     228                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     229                     break;
     230                 }
     231                 case 24:{//Knowledge >w 使Knowledge + x 
     232                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     233                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     234                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     235                     break;
     236                 }
     237 /*---------------------------------------------------------------------------------------------------*/
     238                 case 25:{//Might <w 使 Might + x
     239                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     240                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     241                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     242                     break;
     243                 }
     244                 case 26:{//Might <w 使 Speed + x
     245                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     246                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     247                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     248                     break;
     249                 }
     250                 case 27:{ //Might <w 使Sanity+ x 
     251                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     252                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     253                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     254                     break;
     255                 }
     256                 case 28:{//Might <w 使Knowledge + x
     257                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     258                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     259                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     260                     break;
     261                 }
     262                 case 29:{//Speed <w 使Might + x
     263                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     264                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     265                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     266                     break;
     267                 }
     268                 case 30:{//Speed <w 使Speed + x
     269                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     270                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     271                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);;
     272                     break;
     273                 }
     274                 case 31:{//Speed <w 使Sanity + x 
     275                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     276                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     277                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);;
     278                     break;
     279                 }
     280                 case 32:{//Speed <w 使Knowledge + x 
     281                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     282                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     283                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);;
     284                     break;
     285                 }
     286                 case 33:{//Sanity <w 使Might + x
     287                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     288                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     289                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     290                     break;
     291                 }
     292                 case 34:{//Sanity <w 使Speed + x 
     293                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     294                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     295                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     296                     break;
     297                 }
     298                 case 35:{//Sanity <w 使Sanity + x 
     299                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     300                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     301                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     302                     break;
     303                 }
     304                 case 36:{//Sanity <w 使Knowledge + x 
     305                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     306                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     307                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     308                     break;
     309                 }
     310                 case 37:{//Knowledge <w 使Might + x 
     311                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     312                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     313                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     314                     break;
     315                 }
     316                 case 38:{//Knowledge <w 使Speed + x 
     317                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     318                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     319                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     320                     break;
     321                 }
     322                 case 39:{//Knowledge <w 使Sanity + x 
     323                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     324                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     325                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     326                     break;
     327                 }
     328                 case 40:{//Knowledge <w 使Knowledge + x 
     329                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     330                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     331                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     332                     break;
     333                 }
     334 /*---------------------------------------------------------------------------------------------------*/
     335                 case 41:{//Might >=w 使 Might + x
     336                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     337                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     338                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     339                     break;
     340                 }
     341                 case 42:{//Might >=w 使 Speed + x
     342                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     343                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     344                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     345                     break;
     346                 }
     347                 case 43:{ //Might >=w 使Sanity+ x 
     348                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     349                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     350                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     351                     break;
     352                 }
     353                 case 44:{//Might >=w 使Knowledge + x
     354                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     355                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     356                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     357                     break;
     358                 }
     359                 case 45:{//Speed >=w 使Might + x
     360                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     361                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     362                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     363                     break;
     364                 }
     365                 case 46:{//Speed >=w 使Speed + x
     366                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     367                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     368                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     369                     break;
     370                 }
     371                 case 47:{//Speed >=w 使Sanity + x 
     372                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     373                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     374                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     375                     break;
     376                 }
     377                 case 48:{//Speed >=w 使Knowledge + x 
     378                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     379                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     380                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     381                     break;
     382                 }
     383                 case 49:{//Sanity >=w 使Might + x
     384                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     385                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     386                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     387                     break;
     388                 }
     389                 case 50:{//Sanity >=w 使Speed + x 
     390                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     391                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     392                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     393                     break;
     394                 }
     395                 case 51:{//Sanity >=w 使Sanity + x 
     396                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     397                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     398                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     399                     break;
     400                 }
     401                 case 52:{//Sanity >=w 使Knowledge + x 
     402                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     403                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     404                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     405                     break;
     406                 }
     407                 case 53:{//Knowledge >=w 使Might + x 
     408                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     409                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     410                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     411                     break;
     412                 }
     413                 case 54:{//Knowledge >=w 使Speed + x 
     414                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     415                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     416                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     417                     break;
     418                 }
     419                 case 55:{//Knowledge >=w 使Sanity + x 
     420                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     421                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     422                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     423                     break;
     424                 }
     425                 case 56:{//Knowledge >=w 使Knowledge + x 
     426                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     427                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     428                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     429                     break;
     430                 }
     431 /*---------------------------------------------------------------------------------------------------*/
     432                 case 57:{//Might <=w 使 Might + x
     433                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     434                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     435                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     436                     break;
     437                 }
     438                 case 58:{//Might <=w 使 Speed + x
     439                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     440                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     441                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     442                     break;
     443                 }
     444                 case 59:{ //Might <=w 使Sanity+ x 
     445                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     446                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     447                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     448                     break;
     449                 }
     450                 case 60:{//Might <=w 使Knowledge + x
     451                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     452                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     453                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     454                     break;
     455                 }
     456                 case 61:{//Speed <=w 使Might + x
     457                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     458                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     459                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     460                     break;
     461                 }
     462                 case 62:{//Speed <=w 使Speed + x
     463                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     464                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     465                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);;
     466                     break;
     467                 }
     468                 case 63:{//Speed <=w 使Sanity + x 
     469                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     470                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     471                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);;
     472                     break;
     473                 }
     474                 case 64:{//Speed <=w 使Knowledge + x 
     475                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     476                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     477                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);;
     478                     break;
     479                 }
     480                 case 65:{//Sanity <=w 使Might + x
     481                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     482                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     483                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     484                     break;
     485                 }
     486                 case 66:{//Sanity <=w 使Speed + x 
     487                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     488                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     489                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     490                     break;
     491                 }
     492                 case 67:{//Sanity <=w 使Sanity + x 
     493                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     494                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     495                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     496                     break;
     497                 }
     498                 case 68:{//Sanity <=w 使Knowledge + x 
     499                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     500                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     501                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     502                     break;
     503                 }
     504                 case 69:{//Knowledge <=w 使Might + x 
     505                     if(a+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     506                     else f[t][min(a+x,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     507                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     508                     break;
     509                 }
     510                 case 70:{//Knowledge <=w 使Speed + x 
     511                     if(b+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     512                     else f[t][a][min(b+x,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     513                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     514                     break;
     515                 }
     516                 case 71:{//Knowledge <=w 使Sanity + x 
     517                     if(c+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     518                     else f[t][a][b][min(c+x,8)][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     519                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     520                     break;
     521                 }
     522                 case 72:{//Knowledge <=w 使Knowledge + x 
     523                     if(d+x<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     524                     else f[t][a][b][c][min(d+x,8)]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     525                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
     526                     break;
     527                 }
     528 /*----------------------------------------------------------------------------------------------------------*/            
     529                 case 73:{//Might >w 使Might + x个判定
     530                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     531                     for(register int i=0;i<=16;i++){
     532                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     533                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     534                     }
     535                     break;
     536                 }
     537                 case 74:{//Might >w 使Speed + x个判定
     538                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     539                     for(register int i=0;i<=16;i++){
     540                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     541                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     542                     }
     543                     break;
     544                 }
     545                 case 75:{//Might >w 使Sanity + x个判定 
     546                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     547                     for(register int i=0;i<=16;i++){
     548                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     549                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     550                     }
     551                     break;
     552                 }
     553                 case 76:{//Might >w 使Knowledge + x个判定 
     554                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w];
     555                     for(register int i=0;i<=16;i++){
     556                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     557                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w])*p[(int)abs(x)][i];
     558                     }
     559                     break;
     560                 }
     561                 case 77:{//Speed >w 使Might + x个判定 
     562                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     563                     for(register int i=0;i<=16;i++){
     564                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     565                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     566                     }
     567                     break;
     568                 }
     569                 case 78:{//Speed >w 使Speed + x个判定 
     570                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     571                     for(register int i=0;i<=16;i++){
     572                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     573                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     574                     }
     575                     break;
     576                 }
     577                 
     578                 case 79:{//Speed >w 使Sanity + x个判定 
     579                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     580                     for(register int i=0;i<=16;i++){
     581                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     582                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     583                     }
     584                     break;
     585                 }
     586                 case 80:{//Speed >w 使Knowledge + x个判定 
     587                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w];
     588                     for(register int i=0;i<=16;i++){
     589                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     590                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w])*p[(int)abs(x)][i];
     591                     }
     592                     break;
     593                 }
     594                 case 81:{//Sanity >w 使Might + x个判定 
     595                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     596                     for(register int i=0;i<=16;i++){
     597                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     598                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     599                     }
     600                     break;
     601                 }
     602                 case 82:{//Sanity >w 使Speed + x个判定 
     603                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     604                     for(register int i=0;i<=16;i++){
     605                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     606                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     607                     }
     608                     break;
     609                 }
     610                 case 83:{//Sanity >w 使Sanity + x个判定 
     611                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     612                     for(register int i=0;i<=16;i++){
     613                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     614                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     615                     }
     616                     break;
     617                 }
     618                 case 84:{//Sanity >w 使Knowledge + x个判定 
     619                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w];
     620                     for(register int i=0;i<=16;i++){
     621                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     622                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w])*p[(int)abs(x)][i];
     623                     }
     624                     break;
     625                 }
     626                 case 85:{//Knowledge >w 使Might + x个判定 
     627                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     628                     for(register int i=0;i<=16;i++){
     629                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     630                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     631                     }
     632                     break;
     633                 }
     634                 case 86:{//Knowledge >w 使Speed + x个判定 
     635                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     636                     for(register int i=0;i<=16;i++){
     637                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     638                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     639                     }
     640                     break;
     641                 }
     642                 case 87:{//Knowledge >w 使Sanity + x个判定 
     643                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     644                     for(register int i=0;i<=16;i++){
     645                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     646                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     647                     }
     648                     break;
     649                 }
     650                 case 88:{//Knowledge >w 使Sanity + x个判定 
     651                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w];
     652                     for(register int i=0;i<=16;i++){
     653                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     654                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w])*p[(int)abs(x)][i];
     655                     }
     656                     break;
     657                 }
     658 /*----------------------------------------------------------------------------------------------------------*/            
     659                 case 89:{//Might <w 使Might + x个判定
     660                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     661                     for(register int i=0;i<=16;i++){
     662                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     663                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     664                     }
     665                     break;
     666                 }
     667                 case 90:{//Might <w 使Speed + x个判定
     668                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     669                     for(register int i=0;i<=16;i++){
     670                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     671                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     672                     }
     673                     break;
     674                 }
     675                 case 91:{//Might <w 使Sanity + x个判定 
     676                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     677                     for(register int i=0;i<=16;i++){
     678                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     679                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     680                     }
     681                     break;
     682                 }
     683                 case 92:{//Might <w 使Knowledge + x个判定 
     684                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1]);
     685                     for(register int i=0;i<=16;i++){
     686                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     687                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1]*p[(int)abs(x)][i];
     688                     }
     689                     break;
     690                 }
     691                 case 93:{//Speed <w 使Might + x个判定 
     692                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     693                     for(register int i=0;i<=16;i++){
     694                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     695                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     696                     }
     697                     break;
     698                 }
     699                 case 94:{//Speed <w 使Speed + x个判定 
     700                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     701                     for(register int i=0;i<=16;i++){
     702                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     703                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     704                     }
     705                     break;
     706                 }
     707                 
     708                 case 95:{//Speed <w 使Sanity + x个判定 
     709                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     710                     for(register int i=0;i<=16;i++){
     711                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     712                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     713                     }
     714                     break;
     715                 }
     716                 case 96:{//Speed <w 使Knowledge + x个判定 
     717                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1]);
     718                     for(register int i=0;i<=16;i++){
     719                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     720                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1]*p[(int)abs(x)][i];
     721                     }
     722                     break;
     723                 }
     724                 case 97:{//Sanity <w 使Might + x个判定 
     725                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     726                     for(register int i=0;i<=16;i++){
     727                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     728                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     729                     }
     730                     break;
     731                 }
     732                 case 98:{//Sanity <w 使Speed + x个判定 
     733                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     734                     for(register int i=0;i<=16;i++){
     735                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     736                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     737                     }
     738                     break;
     739                 }
     740                 case 99:{//Sanity <w 使Sanity + x个判定 
     741                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     742                     for(register int i=0;i<=16;i++){
     743                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     744                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     745                     }
     746                     break;
     747                 }
     748                 case 100:{//Sanity <w 使Knowledge + x个判定 
     749                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1]);
     750                     for(register int i=0;i<=16;i++){
     751                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     752                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1]*p[(int)abs(x)][i];
     753                     } 
     754                     break;
     755                 }
     756                 case 101:{//Knowledge <w 使Might + x个判定 
     757                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     758                     for(register int i=0;i<=16;i++){
     759                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     760                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     761                     }
     762                     break;
     763                 }
     764                 case 102:{//Knowledge <w 使Speed + x个判定 
     765                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     766                     for(register int i=0;i<=16;i++){
     767                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     768                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     769                     }
     770                     break;
     771                 }
     772                 case 103:{//Knowledge <w 使Sanity + x个判定 
     773                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     774                     for(register int i=0;i<=16;i++){
     775                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     776                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     777                     }
     778                     break;
     779                 }
     780                 case 104:{//Knowledge <w 使Knowledge + x个判定 
     781                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1]);
     782                     for(register int i=0;i<=16;i++){
     783                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     784                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1]*p[(int)abs(x)][i];
     785                     }
     786                     break;
     787                 }
     788 /*----------------------------------------------------------------------------------------------------------*/            
     789                 case 105:{//Might >=w 使Might + x个判定
     790                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     791                     for(register int i=0;i<=16;i++){
     792                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     793                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     794                     }
     795                     break;
     796                 }
     797                 case 106:{//Might >=w 使Speed + x个判定
     798                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     799                     for(register int i=0;i<=16;i++){
     800                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     801                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     802                     }
     803                     break;
     804                 }
     805                 case 107:{//Might >=w 使Sanity + x个判定 
     806                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     807                     for(register int i=0;i<=16;i++){
     808                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     809                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     810                     }
     811                     break;
     812                 }
     813                 case 108:{//Might >=w 使Knowledge + x个判定 
     814                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w-1];
     815                     for(register int i=0;i<=16;i++){
     816                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     817                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w-1])*p[(int)abs(x)][i];
     818                     }
     819                     break;
     820                 }
     821                 case 109:{//Speed >=w 使Might + x个判定 
     822                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     823                     for(register int i=0;i<=16;i++){
     824                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     825                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     826                     }
     827                     break;
     828                 }
     829                 case 110:{//Speed >=w 使Speed + x个判定 
     830                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     831                     for(register int i=0;i<=16;i++){
     832                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     833                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     834                     }
     835                     break;
     836                 }
     837                 
     838                 case 111:{//Speed >=w 使Sanity + x个判定 
     839                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     840                     for(register int i=0;i<=16;i++){
     841                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     842                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     843                     }
     844                     break;
     845                 }
     846                 case 112:{//Speed >=w 使Knowledge + x个判定 
     847                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w-1];
     848                     for(register int i=0;i<=16;i++){
     849                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     850                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w-1])*p[(int)abs(x)][i];
     851                     }
     852                     break;
     853                 }
     854                 case 113:{//Sanity >=w 使Might + x个判定 
     855                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     856                     for(register int i=0;i<=16;i++){
     857                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     858                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     859                     }
     860                     break;
     861                 }
     862                 case 114:{//Sanity >=w 使Speed + x个判定 
     863                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     864                     for(register int i=0;i<=16;i++){
     865                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     866                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     867                     }
     868                     break;
     869                 }
     870                 case 115:{//Sanity >=w 使Sanity + x个判定 
     871                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     872                     for(register int i=0;i<=16;i++){
     873                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     874                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     875                     }
     876                     break;
     877                 }
     878                 case 116:{//Sanity >=w 使Knowledge + x个判定 
     879                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w-1];
     880                     for(register int i=0;i<=16;i++){
     881                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     882                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w-1])*p[(int)abs(x)][i];
     883                     }
     884                     break;
     885                 }
     886                 case 117:{//Knowledge >=w 使Might + x个判定 
     887                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     888                     for(register int i=0;i<=16;i++){
     889                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     890                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     891                     }
     892                     break;
     893                 }
     894                 case 118:{//Knowledge >=w 使Speed + x个判定 
     895                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     896                     for(register int i=0;i<=16;i++){
     897                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     898                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     899                     }
     900                     break;
     901                 }
     902                 case 119:{//Knowledge >=w 使Sanity + x个判定 
     903                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     904                     for(register int i=0;i<=16;i++){
     905                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     906                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     907                     }
     908                     break;
     909                 }
     910                 case 120:{//Knowledge >=w 使Knowledge + x个判定 
     911                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w-1];
     912                     for(register int i=0;i<=16;i++){
     913                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     914                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w-1])*p[(int)abs(x)][i];
     915                     }
     916                     break;
     917                 }
     918 /*----------------------------------------------------------------------------------------------------------*/            
     919                 case 121:{//Might <=w 使Might + x个判定
     920                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     921                     for(register int i=0;i<=16;i++){
     922                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     923                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     924                     }
     925                     break;
     926                 }
     927                 case 122:{//Might <=w 使Speed + x个判定
     928                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     929                     for(register int i=0;i<=16;i++){
     930                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     931                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     932                     }
     933                     break;
     934                 }
     935                 case 123:{//Might <=w 使Sanity + x个判定 
     936                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     937                     for(register int i=0;i<=16;i++){
     938                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     939                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     940                     }
     941                     break;
     942                 }
     943                 case 124:{//Might <=w 使Knowledge + x个判定 
     944                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[1][a]][w]);
     945                     for(register int i=0;i<=16;i++){
     946                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     947                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[1][a]][w]*p[(int)abs(x)][i];
     948                     }
     949                     break;
     950                 }
     951                 case 125:{//Speed <=w 使Might + x个判定 
     952                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     953                     for(register int i=0;i<=16;i++){
     954                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     955                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     956                     }
     957                     break;
     958                 }
     959                 case 126:{//Speed <=w 使Speed + x个判定 
     960                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     961                     for(register int i=0;i<=16;i++){
     962                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     963                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     964                     }
     965                     break;
     966                 }
     967                 
     968                 case 127:{//Speed <=w 使Sanity + x个判定 
     969                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     970                     for(register int i=0;i<=16;i++){
     971                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     972                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     973                     }
     974                     break;
     975                 }
     976                 case 128:{//Speed <=w 使Knowledge + x个判定 
     977                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[2][b]][w]);
     978                     for(register int i=0;i<=16;i++){
     979                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     980                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[2][b]][w]*p[(int)abs(x)][i];
     981                     }
     982                     break;
     983                 }
     984                 case 129:{//Sanity <=w 使Might + x个判定 
     985                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     986                     for(register int i=0;i<=16;i++){
     987                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
     988                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
     989                     }
     990                     break;
     991                 }
     992                 case 130:{//Sanity <=w 使Speed + x个判定 
     993                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
     994                     for(register int i=0;i<=16;i++){
     995                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
     996                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
     997                     }
     998                     break;
     999                 }
    1000                 case 131:{//Sanity <=w 使Sanity + x个判定 
    1001                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
    1002                     for(register int i=0;i<=16;i++){
    1003                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
    1004                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
    1005                     }
    1006                     break;
    1007                 }
    1008                 case 132:{//Sanity <=w 使Knowledge + x个判定 
    1009                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[3][c]][w]);
    1010                     for(register int i=0;i<=16;i++){
    1011                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
    1012                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[3][c]][w]*p[(int)abs(x)][i];
    1013                     }
    1014                     break;
    1015                 }
    1016                 case 133:{//Knowledge <=w 使Might + x个判定 
    1017                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
    1018                     for(register int i=0;i<=16;i++){
    1019                         if(a+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1020                         else f[t][min(a+(x>0?1:-1)*i,8)][b][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1021                     }
    1022                     break;
    1023                 }
    1024                 case 134:{//Knowledge <=w 使Speed + x个判定 
    1025                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
    1026                     for(register int i=0;i<=16;i++){
    1027                         if(b+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1028                         else f[t][a][min(b+(x>0?1:-1)*i,8)][c][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1029                     }
    1030                     break;
    1031                 }
    1032                 case 135:{//Knowledge <=w 使Sanity + x个判定 
    1033                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
    1034                     for(register int i=0;i<=16;i++){
    1035                         if(c+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1036                         else f[t][a][b][min(c+(x>0?1:-1)*i,8)][d]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1037                     }
    1038                     break;
    1039                 }
    1040                 case 136:{//Knowledge <=w 使Knowledge + x个判定 
    1041                     f[t][a][b][c][d]+=f[t-1][a][b][c][d]*(1.0-sum[num[4][d]][w]);
    1042                     for(register int i=0;i<=16;i++){
    1043                         if(d+(x>0?1:-1)*i<=0) f[0][0][0][0][0]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1044                         else f[t][a][b][c][min(d+(x>0?1:-1)*i,8)]+=f[t-1][a][b][c][d]*sum[num[4][d]][w]*p[(int)abs(x)][i];
    1045                     }
    1046                     break;
    1047                 }
    1048                 default: break;
    1049             } 
    1050         }
    1051         for(register int i=1;i<=8;i++){
    1052             for(register int j=1;j<=8;j++){
    1053                 for(register int k=1;k<=8;k++){
    1054                     for(register int l=1;l<=8;l++){
    1055                         if(f[t][i][j][k][l]>0) q.push((node){i,j,k,l});
    1056                     }
    1057                 }
    1058             }
    1059         }
    1060     }
    1061     printf("%.2lf
    ",f[0][0][0][0][0]*100.0);
    1062     for(register int i=1;i<=8;i++){
    1063         for(register int j=1;j<=8;j++){
    1064             for(register int k=1;k<=8;k++){
    1065                 for(register int l=1;l<=8;l++){
    1066                     ans[1][num[1][i]]+=f[n][i][j][k][l];
    1067                     ans[2][num[2][j]]+=f[n][i][j][k][l];
    1068                     ans[3][num[3][k]]+=f[n][i][j][k][l];
    1069                     ans[4][num[4][l]]+=f[n][i][j][k][l];
    1070                 }
    1071             }
    1072         }
    1073     }
    1074     for(register int i=1;i<=4;i++,cout<<endl){
    1075         for(register int j=1;j<=8;j++){
    1076             printf("%.2lf ",ans[i][j]*100.0);
    1077         }
    1078     }
    1079 }
  • 相关阅读:
    在SQL使用正则表达式
    What is callback?
    readResolve()的使用
    What is a serialVersionUID and why should I use it?
    How to terminate a thread in Java
    Eclipse导入源文件出现编码的问题
    What is livelock?
    [转]不要迷失在技术的海洋中
    [转]基于.Net的单点登录(SSO)解决方案
    IIS网站真正301重定向的方法(包括首页和内页)
  • 原文地址:https://www.cnblogs.com/heoitys/p/11759641.html
Copyright © 2011-2022 走看看