Overview
SHA1 Hash: | 3893826f557576acda676c5ad51b321bd6bbdf86 |
---|---|
Date: | 2012-07-16 17:06:06 |
User: | kinaba |
Comment: | dangerness loosened. |
Timelines: | family | ancestors | descendants | both | trunk |
Diffs: | redesign |
Downloads: | Tarball | ZIP archive |
Other Links: | files | file ages | manifest |
Tags And Properties
- branch=trunk inherited from [16f0b5784f]
- sym-trunk inherited from [16f0b5784f]
Changes
Modified score_memo.txt from [72b9e1358278646f] to [5d3a7e642fe7e1a6].
4 4 contest4 561? 5 5 contest5 1281? 6 6 contest6 737 // 一度通り過ぎるとふさがってしまう曲がり道 7 7 contest7 867? 8 8 contest8 1245 // むり 9 9 contest9 3041? 10 10 contest10 2340 // "λの上に岩" トラップが複数 11 -flood1 569 // 崩すの怖がりすぎ 11 +flood1 937? 12 12 flood2 281! 13 13 flood3 852 // 溺死 14 14 flood4 982 // むずかしい岩崩し 15 15 flood5 561? 16 16 trampoline1 291 // むずかしい岩崩し 17 17 trampoline2 1732? 18 18 trampoline3 3255 // "上に岩" ワープゾーン版
Modified src/solver.d from [a41fda48c5fe0806] to [accda2201a6a857e].
288 288 } 289 289 290 290 return c; 291 291 } 292 292 293 293 Tuple!(char,int)[] search(in Game g, in Pos s, in Pos[] gs, string death, bool danger_ok=false) 294 294 { 295 + bool very_danger(int y, int x) 296 + { 297 + if(g.map[y,x] == ' ' || g.map[y,x] == 'R') 298 + return false; 299 + if(is_rocky(g.map[y+1,x])) 300 + return true; 301 + return false; 302 + } 295 303 bool danger(int y, int x) 296 304 { 297 305 if(g.map[y,x] == ' ' || g.map[y,x] == 'R') 298 306 return false; 299 307 if(is_rocky(g.map[y+1,x])) 300 308 return true; 301 309 if(is_rocky(g.map[y+1,x-1]) && (g.map[y,x-1]=='\\'||is_rocky(g.map[y,x-1])) ................................................................................ 311 319 return false; 312 320 } 313 321 314 322 // avoid directly below '*' 315 323 Tuple!(char,int)[] tryA() { 316 324 const(Pos)[] q; 317 325 foreach(p; gs) 318 - if(!danger(p.y,p.x)) 326 + if(!very_danger(p.y,p.x)) 319 327 q ~= p; 320 328 bool[][] v = new bool[][](g.map.H+2, g.map.W+2); 321 329 foreach(p; q) v[p.y][p.x]=true; 322 330 bool first_step = true; 323 331 for(int step=1; q.length; ++step) { 324 332 Pos[] q2; 325 333 foreach(p; q) {