考试的前一天晚上我还在和$letong$说,我以后晚上再颓就去打模拟,然后就考了个大模拟
我比较$sb$,各种情况全分开了,没怎么压行,打了$1000$行整,$30$多$k$,妈妈再也不怕我打不出来猪国杀了
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 using namespace std; 5 int n,len,Std; 6 int b[5]; 7 char s[20],ss[20]; 8 int val[5][9]; 9 long double p[110][9][9][9][9],gl[9][20],ans[4][9]; 10 void init() 11 { 12 gl[0][0]=1; 13 for(int i=1;i<=8;++i) 14 for(int j=0;j<=16;++j) 15 { 16 if(!gl[i-1][j]) continue; 17 gl[i][j+0]+=gl[i-1][j]/3.00; 18 gl[i][j+1]+=gl[i-1][j]/3.00; 19 gl[i][j+2]+=gl[i-1][j]/3.00; 20 } 21 } 22 void worki(int t) 23 { 24 scanf("%s",ss+1); len=strlen(ss+1); 25 if(ss[1]=='+') 26 { 27 Std=ss[2]-'0'; 28 if(ss[len]=='?') 29 { 30 for(int i=1;i<=8;++i) 31 for(int j=1;j<=8;++j) 32 for(int k=1;k<=8;++k) 33 for(int l=1;l<=8;++l) 34 for(int x=0;x<=16;++x) p[t][min(8,i+x)][j][k][l]+=p[t-1][i][j][k][l]*gl[Std][x]; 35 } 36 else 37 { 38 for(int i=1;i<=8;++i) 39 for(int j=1;j<=8;++j) 40 for(int k=1;k<=8;++k) 41 for(int l=1;l<=8;++l) p[t][min(8,i+Std)][j][k][l]+=p[t-1][i][j][k][l]; 42 } 43 } 44 else if(ss[1]=='-') 45 { 46 Std=ss[2]-'0'; 47 if(ss[len]=='?') 48 { 49 for(int i=1;i<=8;++i) 50 for(int j=1;j<=8;++j) 51 for(int k=1;k<=8;++k) 52 for(int l=1;l<=8;++l) 53 for(int x=0;x<=16;++x) (i-x<=0?p[t][0][0][0][0]:p[t][i-x][j][k][l])+=p[t-1][i][j][k][l]*gl[Std][x]; 54 } 55 else 56 { 57 for(int i=1;i<=8;++i) 58 for(int j=1;j<=8;++j) 59 for(int k=1;k<=8;++k) 60 for(int l=1;l<=8;++l) (i-Std<=0?p[t][0][0][0][0]:p[t][i-Std][j][k][l])+=p[t-1][i][j][k][l]; 61 } 62 } 63 else if(ss[1]=='<') 64 { 65 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 66 if(len==1) y--; 67 if(sss[2]=='i') 68 { 69 for(int i=1;i<=8;++i) 70 for(int j=1;j<=8;++j) 71 for(int k=1;k<=8;++k) 72 for(int l=1;l<=8;++l) 73 { 74 for(int x=0;x<=y;++x) 75 if(ssss[1]=='+') 76 { 77 if(ssss[zh]=='?') 78 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 79 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 80 } 81 else 82 { 83 if(ssss[zh]=='?') 84 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 85 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 86 } 87 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 88 } 89 } 90 if(sss[2]=='p') 91 { 92 for(int i=1;i<=8;++i) 93 for(int j=1;j<=8;++j) 94 for(int k=1;k<=8;++k) 95 for(int l=1;l<=8;++l) 96 { 97 for(int x=0;x<=y;++x) 98 if(ssss[1]=='+') 99 { 100 if(ssss[zh]=='?') 101 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 102 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 103 } 104 else 105 { 106 if(ssss[zh]=='?') 107 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 108 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 109 } 110 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 111 } 112 } 113 if(sss[2]=='a') 114 { 115 for(int i=1;i<=8;++i) 116 for(int j=1;j<=8;++j) 117 for(int k=1;k<=8;++k) 118 for(int l=1;l<=8;++l) 119 { 120 for(int x=0;x<=y;++x) 121 if(ssss[1]=='+') 122 { 123 if(ssss[zh]=='?') 124 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 125 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 126 } 127 else 128 { 129 if(ssss[zh]=='?') 130 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 131 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 132 } 133 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 134 } 135 } 136 if(sss[2]=='n') 137 { 138 for(int i=1;i<=8;++i) 139 for(int j=1;j<=8;++j) 140 for(int k=1;k<=8;++k) 141 for(int l=1;l<=8;++l) 142 { 143 for(int x=0;x<=y;++x) 144 if(ssss[1]=='+') 145 { 146 if(ssss[zh]=='?') 147 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 148 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 149 } 150 else 151 { 152 if(ssss[zh]=='?') 153 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 154 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 155 } 156 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 157 } 158 } 159 } 160 else 161 { 162 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 163 if(len==1) y++; 164 if(sss[2]=='i') 165 { 166 for(int i=1;i<=8;++i) 167 for(int j=1;j<=8;++j) 168 for(int k=1;k<=8;++k) 169 for(int l=1;l<=8;++l) 170 { 171 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 172 for(int x=y;x<=16;++x) 173 if(ssss[1]=='+') 174 { 175 if(ssss[zh]=='?') 176 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 177 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 178 } 179 else 180 { 181 if(ssss[zh]=='?') 182 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 183 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 184 } 185 } 186 } 187 if(sss[2]=='p') 188 { 189 for(int i=1;i<=8;++i) 190 for(int j=1;j<=8;++j) 191 for(int k=1;k<=8;++k) 192 for(int l=1;l<=8;++l) 193 { 194 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 195 for(int x=y;x<=16;++x) 196 if(ssss[1]=='+') 197 { 198 if(ssss[zh]=='?') 199 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 200 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 201 } 202 else 203 { 204 if(ssss[zh]=='?') 205 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 206 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 207 } 208 } 209 } 210 if(sss[2]=='a') 211 { 212 for(int i=1;i<=8;++i) 213 for(int j=1;j<=8;++j) 214 for(int k=1;k<=8;++k) 215 for(int l=1;l<=8;++l) 216 { 217 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 218 for(int x=y;x<=16;++x) 219 if(ssss[1]=='+') 220 { 221 if(ssss[zh]=='?') 222 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 223 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 224 } 225 else 226 { 227 if(ssss[zh]=='?') 228 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 229 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 230 } 231 } 232 } 233 if(sss[2]=='n') 234 { 235 for(int i=1;i<=8;++i) 236 for(int j=1;j<=8;++j) 237 for(int k=1;k<=8;++k) 238 for(int l=1;l<=8;++l) 239 { 240 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 241 for(int x=y;x<=16;++x) 242 if(ssss[1]=='+') 243 { 244 if(ssss[zh]=='?') 245 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 246 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 247 } 248 else 249 { 250 if(ssss[zh]=='?') 251 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[1][i]][x]; 252 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[1][i]][x]; 253 } 254 } 255 } 256 } 257 } 258 void workp(int t) 259 { 260 scanf("%s",ss+1); len=strlen(ss+1); 261 if(ss[1]=='+') 262 { 263 Std=ss[2]-'0'; 264 if(ss[len]=='?') 265 { 266 for(int i=1;i<=8;++i) 267 for(int j=1;j<=8;++j) 268 for(int k=1;k<=8;++k) 269 for(int l=1;l<=8;++l) 270 for(int x=0;x<=16;++x) p[t][i][min(8,j+x)][k][l]+=p[t-1][i][j][k][l]*gl[Std][x]; 271 } 272 else 273 { 274 for(int i=1;i<=8;++i) 275 for(int j=1;j<=8;++j) 276 for(int k=1;k<=8;++k) 277 for(int l=1;l<=8;++l) p[t][i][min(8,j+Std)][k][l]+=p[t-1][i][j][k][l]; 278 } 279 } 280 else if(ss[1]=='-') 281 { 282 Std=ss[2]-'0'; 283 if(ss[len]=='?') 284 { 285 for(int i=1;i<=8;++i) 286 for(int j=1;j<=8;++j) 287 for(int k=1;k<=8;++k) 288 for(int l=1;l<=8;++l) 289 for(int x=0;x<=16;++x) (j-x<=0?p[t][0][0][0][0]:p[t][i][j-x][k][l])+=p[t-1][i][j][k][l]*gl[Std][x]; 290 } 291 else 292 { 293 for(int i=1;i<=8;++i) 294 for(int j=1;j<=8;++j) 295 for(int k=1;k<=8;++k) 296 for(int l=1;l<=8;++l) (j-Std<=0?p[t][0][0][0][0]:p[t][i][j-Std][k][l])+=p[t-1][i][j][k][l]; 297 } 298 } 299 else if(ss[1]=='<') 300 { 301 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 302 if(len==1) y--; 303 if(sss[2]=='i') 304 { 305 for(int i=1;i<=8;++i) 306 for(int j=1;j<=8;++j) 307 for(int k=1;k<=8;++k) 308 for(int l=1;l<=8;++l) 309 { 310 for(int x=0;x<=y;++x) 311 if(ssss[1]=='+') 312 { 313 if(ssss[zh]=='?') 314 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 315 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 316 } 317 else 318 { 319 if(ssss[zh]=='?') 320 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 321 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 322 } 323 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 324 } 325 } 326 if(sss[2]=='p') 327 { 328 for(int i=1;i<=8;++i) 329 for(int j=1;j<=8;++j) 330 for(int k=1;k<=8;++k) 331 for(int l=1;l<=8;++l) 332 { 333 for(int x=0;x<=y;++x) 334 if(ssss[1]=='+') 335 { 336 if(ssss[zh]=='?') 337 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 338 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 339 } 340 else 341 { 342 if(ssss[zh]=='?') 343 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 344 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 345 } 346 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 347 } 348 } 349 if(sss[2]=='a') 350 { 351 for(int i=1;i<=8;++i) 352 for(int j=1;j<=8;++j) 353 for(int k=1;k<=8;++k) 354 for(int l=1;l<=8;++l) 355 { 356 for(int x=0;x<=y;++x) 357 if(ssss[1]=='+') 358 { 359 if(ssss[zh]=='?') 360 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 361 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 362 } 363 else 364 { 365 if(ssss[zh]=='?') 366 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 367 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 368 } 369 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 370 } 371 } 372 if(sss[2]=='n') 373 { 374 for(int i=1;i<=8;++i) 375 for(int j=1;j<=8;++j) 376 for(int k=1;k<=8;++k) 377 for(int l=1;l<=8;++l) 378 { 379 for(int x=0;x<=y;++x) 380 if(ssss[1]=='+') 381 { 382 if(ssss[zh]=='?') 383 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 384 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 385 } 386 else 387 { 388 if(ssss[zh]=='?') 389 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 390 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 391 } 392 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 393 } 394 } 395 } 396 else 397 { 398 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 399 if(len==1) y++; 400 if(sss[2]=='i') 401 { 402 for(int i=1;i<=8;++i) 403 for(int j=1;j<=8;++j) 404 for(int k=1;k<=8;++k) 405 for(int l=1;l<=8;++l) 406 { 407 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 408 for(int x=y;x<=16;++x) 409 if(ssss[1]=='+') 410 { 411 if(ssss[zh]=='?') 412 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 413 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 414 } 415 else 416 { 417 if(ssss[zh]=='?') 418 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 419 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 420 } 421 } 422 } 423 if(sss[2]=='p') 424 { 425 for(int i=1;i<=8;++i) 426 for(int j=1;j<=8;++j) 427 for(int k=1;k<=8;++k) 428 for(int l=1;l<=8;++l) 429 { 430 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 431 for(int x=y;x<=16;++x) 432 if(ssss[1]=='+') 433 { 434 if(ssss[zh]=='?') 435 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 436 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 437 } 438 else 439 { 440 if(ssss[zh]=='?') 441 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 442 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 443 } 444 } 445 } 446 if(sss[2]=='a') 447 { 448 for(int i=1;i<=8;++i) 449 for(int j=1;j<=8;++j) 450 for(int k=1;k<=8;++k) 451 for(int l=1;l<=8;++l) 452 { 453 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 454 for(int x=y;x<=16;++x) 455 if(ssss[1]=='+') 456 { 457 if(ssss[zh]=='?') 458 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 459 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 460 } 461 else 462 { 463 if(ssss[zh]=='?') 464 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 465 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 466 } 467 } 468 } 469 if(sss[2]=='n') 470 { 471 for(int i=1;i<=8;++i) 472 for(int j=1;j<=8;++j) 473 for(int k=1;k<=8;++k) 474 for(int l=1;l<=8;++l) 475 { 476 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 477 for(int x=y;x<=16;++x) 478 if(ssss[1]=='+') 479 { 480 if(ssss[zh]=='?') 481 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 482 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 483 } 484 else 485 { 486 if(ssss[zh]=='?') 487 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[2][j]][x]; 488 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[2][j]][x]; 489 } 490 } 491 } 492 } 493 } 494 void worka(int t) 495 { 496 scanf("%s",ss+1); len=strlen(ss+1); 497 if(ss[1]=='+') 498 { 499 Std=ss[2]-'0'; 500 if(ss[len]=='?') 501 { 502 for(int i=1;i<=8;++i) 503 for(int j=1;j<=8;++j) 504 for(int k=1;k<=8;++k) 505 for(int l=1;l<=8;++l) 506 for(int x=0;x<=16;++x) p[t][i][j][min(8,k+x)][l]+=p[t-1][i][j][k][l]*gl[Std][x]; 507 } 508 else 509 { 510 for(int i=1;i<=8;++i) 511 for(int j=1;j<=8;++j) 512 for(int k=1;k<=8;++k) 513 for(int l=1;l<=8;++l) p[t][i][j][min(8,k+Std)][l]+=p[t-1][i][j][k][l]; 514 } 515 } 516 else if(ss[1]=='-') 517 { 518 Std=ss[2]-'0'; 519 if(ss[len]=='?') 520 { 521 for(int i=1;i<=8;++i) 522 for(int j=1;j<=8;++j) 523 for(int k=1;k<=8;++k) 524 for(int l=1;l<=8;++l) 525 for(int x=0;x<=16;++x) (k-x<=0?p[t][0][0][0][0]:p[t][i][j][k-x][l])+=p[t-1][i][j][k][l]*gl[Std][x]; 526 } 527 else 528 { 529 for(int i=1;i<=8;++i) 530 for(int j=1;j<=8;++j) 531 for(int k=1;k<=8;++k) 532 for(int l=1;l<=8;++l) (k-Std<=0?p[t][0][0][0][0]:p[t][i][j][k-Std][l])+=p[t-1][i][j][k][l]; 533 } 534 } 535 else if(ss[1]=='<') 536 { 537 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 538 if(len==1) y--; 539 if(sss[2]=='i') 540 { 541 for(int i=1;i<=8;++i) 542 for(int j=1;j<=8;++j) 543 for(int k=1;k<=8;++k) 544 for(int l=1;l<=8;++l) 545 { 546 for(int x=0;x<=y;++x) 547 if(ssss[1]=='+') 548 { 549 if(ssss[zh]=='?') 550 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 551 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 552 } 553 else 554 { 555 if(ssss[zh]=='?') 556 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 557 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 558 } 559 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 560 } 561 } 562 if(sss[2]=='p') 563 { 564 for(int i=1;i<=8;++i) 565 for(int j=1;j<=8;++j) 566 for(int k=1;k<=8;++k) 567 for(int l=1;l<=8;++l) 568 { 569 for(int x=0;x<=y;++x) 570 if(ssss[1]=='+') 571 { 572 if(ssss[zh]=='?') 573 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 574 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 575 } 576 else 577 { 578 if(ssss[zh]=='?') 579 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 580 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 581 } 582 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 583 } 584 } 585 if(sss[2]=='a') 586 { 587 for(int i=1;i<=8;++i) 588 for(int j=1;j<=8;++j) 589 for(int k=1;k<=8;++k) 590 for(int l=1;l<=8;++l) 591 { 592 for(int x=0;x<=y;++x) 593 if(ssss[1]=='+') 594 { 595 if(ssss[zh]=='?') 596 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 597 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 598 } 599 else 600 { 601 if(ssss[zh]=='?') 602 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 603 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 604 } 605 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 606 } 607 } 608 if(sss[2]=='n') 609 { 610 for(int i=1;i<=8;++i) 611 for(int j=1;j<=8;++j) 612 for(int k=1;k<=8;++k) 613 for(int l=1;l<=8;++l) 614 { 615 for(int x=0;x<=y;++x) 616 if(ssss[1]=='+') 617 { 618 if(ssss[zh]=='?') 619 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 620 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 621 } 622 else 623 { 624 if(ssss[zh]=='?') 625 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 626 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 627 } 628 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 629 } 630 } 631 } 632 else 633 { 634 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 635 if(len==1) y++; 636 if(sss[2]=='i') 637 { 638 for(int i=1;i<=8;++i) 639 for(int j=1;j<=8;++j) 640 for(int k=1;k<=8;++k) 641 for(int l=1;l<=8;++l) 642 { 643 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 644 for(int x=y;x<=16;++x) 645 if(ssss[1]=='+') 646 { 647 if(ssss[zh]=='?') 648 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 649 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 650 } 651 else 652 { 653 if(ssss[zh]=='?') 654 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 655 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 656 } 657 } 658 } 659 if(sss[2]=='p') 660 { 661 for(int i=1;i<=8;++i) 662 for(int j=1;j<=8;++j) 663 for(int k=1;k<=8;++k) 664 for(int l=1;l<=8;++l) 665 { 666 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 667 for(int x=y;x<=16;++x) 668 if(ssss[1]=='+') 669 { 670 if(ssss[zh]=='?') 671 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 672 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 673 } 674 else 675 { 676 if(ssss[zh]=='?') 677 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 678 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 679 } 680 } 681 } 682 if(sss[2]=='a') 683 { 684 for(int i=1;i<=8;++i) 685 for(int j=1;j<=8;++j) 686 for(int k=1;k<=8;++k) 687 for(int l=1;l<=8;++l) 688 { 689 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 690 for(int x=y;x<=16;++x) 691 if(ssss[1]=='+') 692 { 693 if(ssss[zh]=='?') 694 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 695 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 696 } 697 else 698 { 699 if(ssss[zh]=='?') 700 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 701 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 702 } 703 } 704 } 705 if(sss[2]=='n') 706 { 707 for(int i=1;i<=8;++i) 708 for(int j=1;j<=8;++j) 709 for(int k=1;k<=8;++k) 710 for(int l=1;l<=8;++l) 711 { 712 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 713 for(int x=y;x<=16;++x) 714 if(ssss[1]=='+') 715 { 716 if(ssss[zh]=='?') 717 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 718 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 719 } 720 else 721 { 722 if(ssss[zh]=='?') 723 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[3][k]][x]; 724 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[3][k]][x]; 725 } 726 } 727 } 728 } 729 } 730 void workn(int t) 731 { 732 scanf("%s",ss+1); len=strlen(ss+1); 733 if(ss[1]=='+') 734 { 735 Std=ss[2]-'0'; 736 if(ss[len]=='?') 737 { 738 for(int i=1;i<=8;++i) 739 for(int j=1;j<=8;++j) 740 for(int k=1;k<=8;++k) 741 for(int l=1;l<=8;++l) 742 for(int x=0;x<=16;++x) p[t][i][j][k][min(8,l+x)]+=p[t-1][i][j][k][l]*gl[Std][x]; 743 } 744 else 745 { 746 for(int i=1;i<=8;++i) 747 for(int j=1;j<=8;++j) 748 for(int k=1;k<=8;++k) 749 for(int l=1;l<=8;++l) p[t][i][j][k][min(8,l+Std)]+=p[t-1][i][j][k][l]; 750 } 751 } 752 else if(ss[1]=='-') 753 { 754 Std=ss[2]-'0'; 755 if(ss[len]=='?') 756 { 757 for(int i=1;i<=8;++i) 758 for(int j=1;j<=8;++j) 759 for(int k=1;k<=8;++k) 760 for(int l=1;l<=8;++l) 761 for(int x=0;x<=16;++x) (l-x<=0?p[t][0][0][0][0]:p[t][i][j][k][l-x])+=p[t-1][i][j][k][l]*gl[Std][x]; 762 } 763 else 764 { 765 for(int i=1;i<=8;++i) 766 for(int j=1;j<=8;++j) 767 for(int k=1;k<=8;++k) 768 for(int l=1;l<=8;++l) (l-Std<=0?p[t][0][0][0][0]:p[t][i][j][k][l-Std])+=p[t-1][i][j][k][l]; 769 } 770 } 771 else if(ss[1]=='<') 772 { 773 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 774 if(len==1) y--; 775 if(sss[2]=='i') 776 { 777 for(int i=1;i<=8;++i) 778 for(int j=1;j<=8;++j) 779 for(int k=1;k<=8;++k) 780 for(int l=1;l<=8;++l) 781 { 782 for(int x=0;x<=y;++x) 783 if(ssss[1]=='+') 784 { 785 if(ssss[zh]=='?') 786 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 787 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 788 } 789 else 790 { 791 if(ssss[zh]=='?') 792 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 793 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 794 } 795 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 796 } 797 } 798 if(sss[2]=='p') 799 { 800 for(int i=1;i<=8;++i) 801 for(int j=1;j<=8;++j) 802 for(int k=1;k<=8;++k) 803 for(int l=1;l<=8;++l) 804 { 805 for(int x=0;x<=y;++x) 806 if(ssss[1]=='+') 807 { 808 if(ssss[zh]=='?') 809 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 810 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 811 } 812 else 813 { 814 if(ssss[zh]=='?') 815 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 816 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 817 } 818 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 819 } 820 } 821 if(sss[2]=='a') 822 { 823 for(int i=1;i<=8;++i) 824 for(int j=1;j<=8;++j) 825 for(int k=1;k<=8;++k) 826 for(int l=1;l<=8;++l) 827 { 828 for(int x=0;x<=y;++x) 829 if(ssss[1]=='+') 830 { 831 if(ssss[zh]=='?') 832 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 833 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 834 } 835 else 836 { 837 if(ssss[zh]=='?') 838 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 839 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 840 } 841 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 842 } 843 } 844 if(sss[2]=='n') 845 { 846 for(int i=1;i<=8;++i) 847 for(int j=1;j<=8;++j) 848 for(int k=1;k<=8;++k) 849 for(int l=1;l<=8;++l) 850 { 851 for(int x=0;x<=y;++x) 852 if(ssss[1]=='+') 853 { 854 if(ssss[zh]=='?') 855 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 856 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 857 } 858 else 859 { 860 if(ssss[zh]=='?') 861 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 862 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 863 } 864 for(int x=y+1;x<=16;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 865 } 866 } 867 } 868 else 869 { 870 int y,zh,z; char sss[10],ssss[4]; scanf("%d%s%s",&y,sss+1,ssss+1); z=ssss[2]-'0'; zh=strlen(ssss+1); 871 if(len==1) y++; 872 if(sss[2]=='i') 873 { 874 for(int i=1;i<=8;++i) 875 for(int j=1;j<=8;++j) 876 for(int k=1;k<=8;++k) 877 for(int l=1;l<=8;++l) 878 { 879 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 880 for(int x=y;x<=16;++x) 881 if(ssss[1]=='+') 882 { 883 if(ssss[zh]=='?') 884 for(int h=0;h<=16;++h) p[t][min(8,i+h)][j][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 885 else p[t][min(8,i+z)][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 886 } 887 else 888 { 889 if(ssss[zh]=='?') 890 for(int h=0;h<=16;++h) (i-h<=0?p[t][0][0][0][0]:p[t][i-h][j][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 891 else (i-z<=0?p[t][0][0][0][0]:p[t][i-z][j][k][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 892 } 893 } 894 } 895 if(sss[2]=='p') 896 { 897 for(int i=1;i<=8;++i) 898 for(int j=1;j<=8;++j) 899 for(int k=1;k<=8;++k) 900 for(int l=1;l<=8;++l) 901 { 902 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 903 for(int x=y;x<=16;++x) 904 if(ssss[1]=='+') 905 { 906 if(ssss[zh]=='?') 907 for(int h=0;h<=16;++h) p[t][i][min(8,j+h)][k][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 908 else p[t][i][min(8,j+z)][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 909 } 910 else 911 { 912 if(ssss[zh]=='?') 913 for(int h=0;h<=16;++h) (j-h<=0?p[t][0][0][0][0]:p[t][i][j-h][k][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 914 else (j-z<=0?p[t][0][0][0][0]:p[t][i][j-z][k][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 915 } 916 } 917 } 918 if(sss[2]=='a') 919 { 920 for(int i=1;i<=8;++i) 921 for(int j=1;j<=8;++j) 922 for(int k=1;k<=8;++k) 923 for(int l=1;l<=8;++l) 924 { 925 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 926 for(int x=y;x<=16;++x) 927 if(ssss[1]=='+') 928 { 929 if(ssss[zh]=='?') 930 for(int h=0;h<=16;++h) p[t][i][j][min(8,k+h)][l]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 931 else p[t][i][j][min(8,k+z)][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 932 } 933 else 934 { 935 if(ssss[zh]=='?') 936 for(int h=0;h<=16;++h) (k-h<=0?p[t][0][0][0][0]:p[t][i][j][k-h][l])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 937 else (k-z<=0?p[t][0][0][0][0]:p[t][i][j][k-z][l])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 938 } 939 } 940 } 941 if(sss[2]=='n') 942 { 943 for(int i=1;i<=8;++i) 944 for(int j=1;j<=8;++j) 945 for(int k=1;k<=8;++k) 946 for(int l=1;l<=8;++l) 947 { 948 for(int x=0;x<y;++x) p[t][i][j][k][l]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 949 for(int x=y;x<=16;++x) 950 if(ssss[1]=='+') 951 { 952 if(ssss[zh]=='?') 953 for(int h=0;h<=16;++h) p[t][i][j][k][min(8,l+h)]+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 954 else p[t][i][j][k][min(8,l+z)]+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 955 } 956 else 957 { 958 if(ssss[zh]=='?') 959 for(int h=0;h<=16;++h) (l-h<=0?p[t][0][0][0][0]:p[t][i][j][k][l-h])+=p[t-1][i][j][k][l]*gl[z][h]*gl[val[4][l]][x]; 960 else (l-z<=0?p[t][0][0][0][0]:p[t][i][j][k][l-z])+=p[t-1][i][j][k][l]*gl[val[4][l]][x]; 961 } 962 } 963 } 964 } 965 } 966 void out(int t) 967 { 968 for(int i=1;i<=8;++i) 969 for(int j=1;j<=8;++j) 970 for(int k=1;k<=8;++k) 971 for(int l=1;l<=8;++l) 972 if(p[t][i][j][k][l]) cout<<"p["<<t<<"]["<<i<<"]["<<j<<"]["<<k<<"]["<<l<<"]="<<p[t][i][j][k][l]<<endl; 973 } 974 int main() 975 { 976 // freopen("2.du","r",stdin); 977 // freopen("W.out","w",stdout); 978 for(int i=1;i<=4;++i) 979 { 980 scanf("%s%d",s+1,&b[i]); 981 for(int j=1;j<=8;++j) val[i][j]=s[j]-'0'; 982 } 983 p[0][b[1]][b[2]][b[3]][b[4]]=100; init(); scanf("%d",&n); 984 for(int i=1;i<=n;++i) 985 { 986 p[i][0][0][0][0]+=p[i-1][0][0][0][0]; scanf("%s",s+1); 987 if(s[2]=='i') worki(i); 988 if(s[2]=='p') workp(i); 989 if(s[2]=='a') worka(i); 990 if(s[2]=='n') workn(i); 991 // cout<<"---------------------------------------------"<<p[i][0][0][0][0]<<endl; out(i); 992 } 993 for(int i=1;i<=8;++i) 994 for(int j=1;j<=8;++j) 995 for(int k=1;k<=8;++k) 996 for(int l=1;l<=8;++l) 997 { 998 ans[1][val[1][i]]+=p[n][i][j][k][l]; 999 ans[2][val[2][j]]+=p[n][i][j][k][l]; 1000 ans[3][val[3][k]]+=p[n][i][j][k][l]; 1001 ans[4][val[4][l]]+=p[n][i][j][k][l]; 1002 } 1003 printf("%0.2Lf\n",p[n][0][0][0][0]); 1004 for(int i=1;i<=4;++i) 1005 { 1006 for(int j=1;j<=8;++j) printf("%0.2Lf ",ans[i][j]); 1007 puts(""); 1008 } 1009 return 0; 1010 }
别问我怎么调的,你大概需要开着10号字,并且全屏,然后不停的查找,调试
我打错了无数多个变量名,我不是人