Entry side is the 60-degree wedge of the port, not the cell-edge direction. Levels regenerated; hint line joins the waiting plane to the on-board path.
3455 lines
47 KiB
JavaScript
3455 lines
47 KiB
JavaScript
// Frozen, deterministic airport fixtures. Four teaching lessons plus radius-3 and radius-4 practice.
|
|
export const LEVELS = [
|
|
{
|
|
"id": "airport-1",
|
|
"name": "留一点空间",
|
|
"cells": [
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": 0,
|
|
"r": 0,
|
|
"color": 8
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 0
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": -2,
|
|
"r": 2,
|
|
"dir": 0,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 0,
|
|
"r": 2,
|
|
"dir": 2,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": 1,
|
|
"r": 1,
|
|
"dir": 2,
|
|
"color": 3
|
|
}
|
|
],
|
|
"moveLimit": 3,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "点击场外的可可色飞机,它会飞进同色的可可色机位。",
|
|
"solution": [
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"minimumActions": 1,
|
|
"remainingOriginals": 3,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 4
|
|
},
|
|
"experienceActions": 1,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-2",
|
|
"name": "同色才停靠",
|
|
"cells": [
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
3,
|
|
4,
|
|
5,
|
|
0,
|
|
1,
|
|
2
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": 0,
|
|
"r": 0,
|
|
"color": 0
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 0,
|
|
"side": 2
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 0,
|
|
"r": -1,
|
|
"dir": 0,
|
|
"color": 7
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 0,
|
|
"r": 2,
|
|
"dir": 4,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": -1,
|
|
"r": -1,
|
|
"dir": 4,
|
|
"color": 3
|
|
}
|
|
],
|
|
"moveLimit": 3,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "只有草莓色机位能停草莓色飞机,别被玫瑰色飞机混淆。",
|
|
"solution": [
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"minimumActions": 1,
|
|
"remainingOriginals": 3,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 4
|
|
},
|
|
"experienceActions": 1,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-3",
|
|
"name": "转一下再接入",
|
|
"cells": [
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
2,
|
|
4,
|
|
0,
|
|
5,
|
|
1,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
5,
|
|
4,
|
|
3,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
3,
|
|
2,
|
|
1,
|
|
0,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": 1,
|
|
"r": 0,
|
|
"color": 8
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 2
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 0,
|
|
"r": 1,
|
|
"dir": 3,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 2,
|
|
"r": -2,
|
|
"dir": 3,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": 0,
|
|
"r": 2,
|
|
"dir": 3,
|
|
"color": 3
|
|
}
|
|
],
|
|
"moveLimit": 4,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "跑道还没连通。旋转棋盘,让来机所在边通到停机位。",
|
|
"solution": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"minimumActions": 2,
|
|
"remainingOriginals": 3,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 5
|
|
},
|
|
"experienceActions": 2,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-4",
|
|
"name": "清障再接入",
|
|
"cells": [
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
5,
|
|
4,
|
|
3,
|
|
2,
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
4,
|
|
2,
|
|
1,
|
|
5,
|
|
0,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
5,
|
|
4,
|
|
3,
|
|
2,
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": -1,
|
|
"r": 1,
|
|
"color": 8
|
|
},
|
|
{
|
|
"id": "P2",
|
|
"q": 0,
|
|
"r": -1,
|
|
"color": 0
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 3
|
|
},
|
|
{
|
|
"id": "in2",
|
|
"color": 0,
|
|
"side": 0
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 0,
|
|
"r": -2,
|
|
"dir": 0,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 2,
|
|
"r": -2,
|
|
"dir": 0,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": -1,
|
|
"r": 0,
|
|
"dir": 0,
|
|
"color": 3
|
|
},
|
|
{
|
|
"id": "out4",
|
|
"q": 2,
|
|
"r": -1,
|
|
"dir": 0,
|
|
"color": 4
|
|
},
|
|
{
|
|
"id": "out5",
|
|
"q": -1,
|
|
"r": -1,
|
|
"dir": 0,
|
|
"color": 6
|
|
}
|
|
],
|
|
"moveLimit": 7,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "跑道要连通,通路也不能被飞机挡住。先移开阻挡,再旋转接入两架来机。",
|
|
"solution": [
|
|
{
|
|
"type": "tap",
|
|
"id": "out1"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "tap",
|
|
"id": "out1"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"minimumActions": 5,
|
|
"remainingOriginals": 4,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 11
|
|
},
|
|
"experienceActions": 5,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-5",
|
|
"name": "更大的停机坪",
|
|
"cells": [
|
|
{
|
|
"q": -3,
|
|
"r": 0,
|
|
"tracks": [
|
|
2,
|
|
3,
|
|
0,
|
|
1,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 1,
|
|
"tracks": [
|
|
2,
|
|
5,
|
|
0,
|
|
4,
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
2,
|
|
5,
|
|
0,
|
|
4,
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
5,
|
|
3,
|
|
4,
|
|
1,
|
|
2,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
2,
|
|
4,
|
|
0,
|
|
5,
|
|
1,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
4,
|
|
5,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
2,
|
|
3,
|
|
0,
|
|
1,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 1,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -2,
|
|
"tracks": [
|
|
2,
|
|
5,
|
|
0,
|
|
4,
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": 0,
|
|
"r": -1,
|
|
"color": 8
|
|
},
|
|
{
|
|
"id": "P2",
|
|
"q": 1,
|
|
"r": 0,
|
|
"color": 8
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 0
|
|
},
|
|
{
|
|
"id": "in2",
|
|
"color": 8,
|
|
"side": 1
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 1,
|
|
"r": 2,
|
|
"dir": 4,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": -2,
|
|
"r": 2,
|
|
"dir": 0,
|
|
"color": 3
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": 3,
|
|
"r": -3,
|
|
"dir": 2,
|
|
"color": 4
|
|
},
|
|
{
|
|
"id": "out4",
|
|
"q": 3,
|
|
"r": -2,
|
|
"dir": 4,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out5",
|
|
"q": 3,
|
|
"r": 0,
|
|
"dir": 2,
|
|
"color": 1
|
|
},
|
|
{
|
|
"id": "out6",
|
|
"q": 2,
|
|
"r": 1,
|
|
"dir": 3,
|
|
"color": 6
|
|
},
|
|
{
|
|
"id": "out7",
|
|
"q": -1,
|
|
"r": 2,
|
|
"dir": 5,
|
|
"color": 7
|
|
},
|
|
{
|
|
"id": "out8",
|
|
"q": -3,
|
|
"r": 3,
|
|
"dir": 0,
|
|
"color": 9
|
|
}
|
|
],
|
|
"moveLimit": 10,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "棋盘变大了,规则不变:清出通路,把来机停到同色机位。",
|
|
"solution": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out5"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out5"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"seedAttempt": 531,
|
|
"radius": 3,
|
|
"cells": 37,
|
|
"minimumActions": 6,
|
|
"remainingOriginals": 7,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 19
|
|
},
|
|
"experienceActions": 6,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-6",
|
|
"name": "绕一圈再接入",
|
|
"cells": [
|
|
{
|
|
"q": -3,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": -1,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 3,
|
|
"tracks": [
|
|
2,
|
|
5,
|
|
0,
|
|
4,
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
2,
|
|
5,
|
|
0,
|
|
4,
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 3,
|
|
"tracks": [
|
|
4,
|
|
2,
|
|
1,
|
|
5,
|
|
0,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
5,
|
|
3,
|
|
4,
|
|
1,
|
|
2,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -2,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -1,
|
|
"tracks": [
|
|
4,
|
|
3,
|
|
5,
|
|
1,
|
|
0,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": -1,
|
|
"r": 1,
|
|
"color": 8
|
|
},
|
|
{
|
|
"id": "P2",
|
|
"q": 0,
|
|
"r": -1,
|
|
"color": 0
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 3
|
|
},
|
|
{
|
|
"id": "in2",
|
|
"color": 0,
|
|
"side": 5
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 1,
|
|
"r": -3,
|
|
"dir": 0,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 0,
|
|
"r": 1,
|
|
"dir": 2,
|
|
"color": 3
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": 2,
|
|
"r": 1,
|
|
"dir": 1,
|
|
"color": 4
|
|
},
|
|
{
|
|
"id": "out4",
|
|
"q": -2,
|
|
"r": -1,
|
|
"dir": 5,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out5",
|
|
"q": 2,
|
|
"r": -1,
|
|
"dir": 2,
|
|
"color": 1
|
|
},
|
|
{
|
|
"id": "out6",
|
|
"q": -1,
|
|
"r": 3,
|
|
"dir": 3,
|
|
"color": 6
|
|
},
|
|
{
|
|
"id": "out7",
|
|
"q": 2,
|
|
"r": -2,
|
|
"dir": 5,
|
|
"color": 7
|
|
},
|
|
{
|
|
"id": "out8",
|
|
"q": 1,
|
|
"r": 1,
|
|
"dir": 2,
|
|
"color": 9
|
|
}
|
|
],
|
|
"moveLimit": 14,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "在 37 格上转动轨道,让不同边的来机各自停好。",
|
|
"solution": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out3"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out8"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out2"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": -1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out3"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out8"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out2"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"seedAttempt": 951,
|
|
"radius": 3,
|
|
"cells": 37,
|
|
"minimumActions": 10,
|
|
"remainingOriginals": 5,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 15
|
|
},
|
|
"experienceActions": 10,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
},
|
|
{
|
|
"id": "airport-7",
|
|
"name": "空港全景",
|
|
"cells": [
|
|
{
|
|
"q": -4,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -4,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
5,
|
|
4,
|
|
3,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -4,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -4,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -4,
|
|
"r": 4,
|
|
"tracks": [
|
|
4,
|
|
3,
|
|
5,
|
|
1,
|
|
0,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -3,
|
|
"r": 4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": -2,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
4,
|
|
5,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -2,
|
|
"r": 4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 1,
|
|
"tracks": [
|
|
5,
|
|
2,
|
|
1,
|
|
4,
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": -1,
|
|
"r": 4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
4,
|
|
5,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
4,
|
|
5,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 1,
|
|
"tracks": [
|
|
4,
|
|
5,
|
|
3,
|
|
2,
|
|
0,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 0,
|
|
"r": 4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
4,
|
|
5,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 1,
|
|
"r": 3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -3,
|
|
"tracks": [
|
|
4,
|
|
5,
|
|
3,
|
|
2,
|
|
0,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 0,
|
|
"tracks": [
|
|
5,
|
|
3,
|
|
4,
|
|
1,
|
|
2,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 2,
|
|
"r": 2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 3,
|
|
"r": 1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 4,
|
|
"r": -4,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 4,
|
|
"r": -3,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 4,
|
|
"r": -2,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 4,
|
|
"r": -1,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"q": 4,
|
|
"r": 0,
|
|
"tracks": [
|
|
1,
|
|
0,
|
|
3,
|
|
2,
|
|
5,
|
|
4
|
|
]
|
|
}
|
|
],
|
|
"stands": [
|
|
{
|
|
"id": "P1",
|
|
"q": -3,
|
|
"r": 0,
|
|
"color": 8
|
|
},
|
|
{
|
|
"id": "P2",
|
|
"q": 3,
|
|
"r": -3,
|
|
"color": 0
|
|
}
|
|
],
|
|
"arrivals": [
|
|
{
|
|
"id": "in1",
|
|
"color": 8,
|
|
"side": 4
|
|
},
|
|
{
|
|
"id": "in2",
|
|
"color": 0,
|
|
"side": 1
|
|
}
|
|
],
|
|
"originals": [
|
|
{
|
|
"id": "out1",
|
|
"q": 2,
|
|
"r": -4,
|
|
"dir": 0,
|
|
"color": 2
|
|
},
|
|
{
|
|
"id": "out2",
|
|
"q": 4,
|
|
"r": -4,
|
|
"dir": 1,
|
|
"color": 3
|
|
},
|
|
{
|
|
"id": "out3",
|
|
"q": 4,
|
|
"r": -1,
|
|
"dir": 2,
|
|
"color": 4
|
|
},
|
|
{
|
|
"id": "out4",
|
|
"q": 2,
|
|
"r": 2,
|
|
"dir": 2,
|
|
"color": 5
|
|
},
|
|
{
|
|
"id": "out5",
|
|
"q": -1,
|
|
"r": -3,
|
|
"dir": 0,
|
|
"color": 1
|
|
},
|
|
{
|
|
"id": "out6",
|
|
"q": -1,
|
|
"r": 4,
|
|
"dir": 4,
|
|
"color": 6
|
|
},
|
|
{
|
|
"id": "out7",
|
|
"q": 1,
|
|
"r": 3,
|
|
"dir": 2,
|
|
"color": 7
|
|
},
|
|
{
|
|
"id": "out8",
|
|
"q": -2,
|
|
"r": -2,
|
|
"dir": 5,
|
|
"color": 9
|
|
},
|
|
{
|
|
"id": "out9",
|
|
"q": -4,
|
|
"r": 0,
|
|
"dir": 5,
|
|
"color": 10
|
|
},
|
|
{
|
|
"id": "out10",
|
|
"q": -3,
|
|
"r": 1,
|
|
"dir": 4,
|
|
"color": 11
|
|
},
|
|
{
|
|
"id": "out11",
|
|
"q": 3,
|
|
"r": 1,
|
|
"dir": 2,
|
|
"color": 0
|
|
},
|
|
{
|
|
"id": "out12",
|
|
"q": 4,
|
|
"r": -3,
|
|
"dir": 2,
|
|
"color": 8
|
|
},
|
|
{
|
|
"id": "out13",
|
|
"q": -1,
|
|
"r": -2,
|
|
"dir": 0,
|
|
"color": 2
|
|
}
|
|
],
|
|
"moveLimit": 12,
|
|
"reward": {
|
|
"steps": 5,
|
|
"maxClaims": 3
|
|
},
|
|
"lesson": "61 格空港:原有飞机更多,先在人群里清出通路,再把两色来机各自接好。",
|
|
"solution": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out2"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out9"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out12"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"experience": [
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out2"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out9"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "out12"
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in1"
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "rotate",
|
|
"direction": 1
|
|
},
|
|
{
|
|
"type": "tap",
|
|
"id": "in2"
|
|
}
|
|
],
|
|
"evidence": {
|
|
"seedAttempt": 27,
|
|
"radius": 4,
|
|
"cells": 61,
|
|
"minimumActions": 8,
|
|
"remainingOriginals": 10,
|
|
"clearFirst": {
|
|
"status": "solved",
|
|
"minimumActions": 18
|
|
},
|
|
"experienceActions": 8,
|
|
"uniqueEmptyBoard": true
|
|
}
|
|
}
|
|
];
|